插入排序法
基本思想:
创建一个空数组B,第1次先放置数组A的第一个数放入B,第2次再从A中拿出第二个数,放入B之前先从后向前依次与B中的元素比较一下大小,大的数插在后面,以此类推。
代码如下:
function insert(arr) {
let result = [];
//默认先放入第一项数
result.push(arr[0]);
//从第二项数开始比较
for(i = 1;i < arr.length;i++) {
let X = arr[i];
//倒序遍历,从后往前比较
for(j = result.length; j >=0; j--) {
let Y = result[j];
if(X > result[j]) {
result.splice(j+1,0,X);
break;
}
//比到第一项时直接放在数组头部即可
if(j === 0) {
result.unshift(X)
}
}
}
return result;
}
let ary = [10,3,30,28,9];
ary = insert(ary);
console.log(ary);
运行结果如图:
【 以上是本人学习探索中记下的笔记,仅供分享学习。如有雷同,无意冒犯,请务必及时告知,立即更正!】