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
// ]
相关推荐
猜测77 分钟前
新语法在旧设备上的问题
前端·javascript·node.js
贫民窟的勇敢爷们10 分钟前
Scikit-learn算法:从入门到精通的机器学习工具箱
算法·机器学习·scikit-learn
Liangwei Lin23 分钟前
LeetCode 155. 最小栈
java·javascript·算法
洛水水28 分钟前
【数据结构】红黑树详解
数据结构·红黑树
炸膛坦客28 分钟前
嵌入式 - 数据结构与算法:(1-9)数据结构 - 队列(Queue)
c语言·数据结构
~|Bernard|1 小时前
二.go语言中map的底层原理(2026-5-8)
算法·golang·哈希算法
AbandonForce1 小时前
哈希表(HashTable,散列表)个人理解
开发语言·数据结构·c++·散列表
mask哥1 小时前
力扣算法java实现汇总整理(下)
java·算法·leetcode
代码中介商1 小时前
栈结构完全指南:顺序栈实现精讲
c语言·开发语言·数据结构
样例过了就是过了1 小时前
LeetCode热题100 编辑距离
数据结构·c++·算法·leetcode·动态规划