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
// ]
相关推荐
JeffersonZU23 分钟前
【数据结构】2-3-2 单链表的插入删除
数据结构
90后小陈老师24 分钟前
3D个人简历网站 5.天空、鸟、飞机
前端·javascript·3d
chenbin___24 分钟前
react native text 显示 三行 超出部分 中间使用省略号
javascript·react native·react.js
m0_7382065427 分钟前
嵌入式学习的第二十二天-数据结构-栈+队列
数据结构·学习
远瞻。1 小时前
【论文阅读】人脸修复(face restoration ) 不同先验代表算法整理2
论文阅读·算法
漫路在线4 小时前
JS逆向-某易云音乐下载器
开发语言·javascript·爬虫·python
先做个垃圾出来………4 小时前
哈夫曼树(Huffman Tree)
数据结构·算法
BillKu5 小时前
Vue3 Element Plus 对话框加载实现
javascript·vue.js·elementui
phoenix@Capricornus6 小时前
反向传播算法——矩阵形式递推公式——ReLU传递函数
算法·机器学习·矩阵
初遇你时动了情6 小时前
html js 原生实现web组件、web公共组件、template模版插槽
前端·javascript·html