8.手写JavaScript插入排序

一、核心思路

从第二个元素开始,将每个元素插入到已排序的数组中的适当位置,直到整个数组排序完成。

二、代码实现

javascript 复制代码
let arr = [2,6,8,1,3,9,0,5,4,7]
/**
 * 插入排序 
 * @param {Array} array 传入数组 
 * @return {Array} array 返回选择排序结果 
 */
function insertSort(array){
  for (let i = 0; i < array.length; i++) {
    let curElement = array[i]
    let j = i
    while (j>=0&&curElement<=array[j-1]) {
      array[j] = array[j-1]
      array[j-1] = curElement
      --j
    }
  }
return array
}
console.log(insertSort(arr))
// [
//   0, 1, 2, 3, 4,
//   5, 6, 7, 8, 9
// ]
相关推荐
Irene19911 分钟前
数据排序为什么默认升序
算法·排序
朝阳396 分钟前
react【实战】搜索框(含联动动画,清空按钮)
前端·javascript·react.js
gCode Teacher 格码致知7 分钟前
Javascript提高:一个彩色小球在画布边界内反弹并留下渐变轨迹-由Deepseek产生
开发语言·javascript
.54814 分钟前
DFS + BFS(深度优先搜索 & 广度优先搜索)
算法·深度优先·宽度优先
一行代码一行诗++17 分钟前
转义字符和语句
c语言·开发语言·算法
算法鑫探19 分钟前
算法与数据结构 以及算法复杂度
c语言·数据结构·算法·新人首发
sinat_2554878121 分钟前
数组·学习笔记
java·javascript·笔记
迷途之人不知返24 分钟前
List的学习
数据结构·c++·学习·list
数据牧羊人的成长笔记30 分钟前
SVM与朴素贝叶斯算法+Kaggle竞赛+智能推荐系统+关联规则分析与Apriori算法+Gensim与LDA主题模型
算法·机器学习·支持向量机
拳里剑气34 分钟前
C++算法:前缀和
开发语言·c++·算法·前缀和