插入排序法是将阵列中未排序的元素,逐一与排序好的资料作比较。它的时间复杂度是 (O(n^2))。
使用哪种资料结构:Array
arr <- an unsorted array of integers
let len be the length of arr
for i (1 t0 len-1) do
key = arr[i]
j = i-1
while j>=0 && key<arr[j]
arr[j+1] = arr[j]
j--
end while
arr[j+1] = key
end for
debugger
function insertionSort(arr) {
for (let i = 1; i < arr.length; i++) {
let key = arr[i] // 第一个未排序的元素
let j = i-1 // 已排序元素的控制器
console.log(key)
while (j>=0 && key<arr[j]) { // 移动出正确位置
arr[j+1] = arr[j]
console.log(arr)
j--
}
arr[j+1] = key // 插入未排序元素
console.log(arr)
}
}
insertionSort([8, 9, 2, 5, 1])
>>: # Day 13 Cache and TLB Flushing Under Linux (Q&A - I)
-密码学 问题是关於确保数据本身的完整性和数据来源的真实性,或者所谓的“真实性”,包括这两个概念。...
CISA书最後一章为资讯资产安全控制及安全事件管理,与CISSP内容大致重叠,差别在需以稽核角度查看...
今天要来谈谈如何查看 Angular 应用程序的版本及更新。 首先,我们要先知道目前本机端的 Ang...
今天要把上一篇讲的hash map写成code! struct type Node struct {...
MDN: https://developer.mozilla.org/zh-CN/docs/Glos...