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
// ]
相关推荐
罗超驿13 小时前
15.JavaScript 函数与作用域完全指南:语法、参数、表达式与作用域链实战
开发语言·前端·javascript
AI科技星13 小时前
基于**v=c(空间光速螺旋运动)唯一第一性原理**重新完整求导证明
人工智能·线性代数·算法·机器学习·架构·概率论·学习方法
一念&13 小时前
油猴脚本教程——元数据块
javascript·浏览器·脚本·油猴
风筝在晴天搁浅13 小时前
美团 LeetCode 692.前K个高频单词
算法·leetcode·职场和发展
地平线开发者14 小时前
量化训练时 fusebn/withbn 简介
算法·自动驾驶
不做无法实现的梦~14 小时前
MAVLink 协议教程
linux·stm32·嵌入式硬件·算法
谭光志14 小时前
如何从零开始实现一个 AI Agent CLI
前端·javascript·ai编程
墨白曦煜14 小时前
算法实战笔记:剥开回溯算法的外衣——从通用模板到高阶去重(八)
笔记·算法
丷丩14 小时前
MapLibre GL JS第25课:添加栅格瓦片源
开发语言·javascript·gis·mapbox·maplibre gl js
半个落月14 小时前
彻底搞懂 JavaScript 变量提升(Hoisting)—— 从现象到底层原理
前端·javascript