插入排序竭贩,
arr =?[5, 2, 4, 6, 1, 3]
初始化狀態(tài)颗搂,默認(rèn) 第一個(gè)數(shù)是排序好的寨蹋,也就是說(shuō)雨膨,排序從1開(kāi)始
for (let i = 1; i < arr.leng; i++)
首先取出一張牌擂涛,
var tmp = arr[i]
跟之前的從后向前排序。
var j = i - 1
var arr = [5, 2, 4, 6, 1, 3]
for (let i =1; i < arr.length; i++) {
var tmp = arr[i]
var j = i -1
? while (j >=0 && arr[j] > tmp) {
arr[j +1] = arr[j]
j--;
? }
arr[j +1] = tmp //循環(huán)內(nèi) j -- 了
}
理解完畢
偽代碼:
for i =2 to arr.length
key = arr[i]
j = i - 1
while j >0 and arr[j] > key
arr[j + 1] =arr [j]
j --
arr[j + 1] = key