感觉像是前面反向版本的冒泡排序
来源:11-4 JavaScript 实现:插入排序

见信
2023-10-08
/**
* @description: 插入排序
*/
function insertionSort(arr: number[]) {
for (let i = 1; i < arr.length; i++) {
for (let j = i; j > 0; j--) {
if (arr[j] < arr[j - 1]) {
const temp = arr[j]
arr[j] = arr[j - 1]
arr[j - 1] = temp
} else {
break
}
}
}
}
const arr = [2, 4, 5, 3, 1]
insertionSort(arr)
console.log(arr)
/**
* @description: 冒泡排序
*/
export const bubbleSort = (arr: number[]) => {
for (let i = 0; i < arr.length - 1; i++) {
for (let j = 0; j < arr.length - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
const temp = arr[j]
arr[j] = arr[j + 1]
arr[j + 1] = temp
}
}
}
}
const arr = [5, 4, 3, 2, 1]
bubbleSort(arr)
console.log(arr)
写回答
1回答
-
lewis
2024-12-26
还是有显著区别的,冒泡是比较相邻项,插入排序是插入到合适位置
00
相似问题