直接插入排序
直接插入排序就是将未排序的元素一个个拿出来,然后放入到有序的元素中去,并且使放入后的序列仍然有序。
- 再看代码
- 代码如下
class InsertSort{
sort(arr){
console.log("原来的数组:");
console.log(arr);
console.log("排序后的数组:");
for (let i = 1; i < arr.length; i++) {
let j = i;
while (j>0&&arr[j]<arr[j-1]) {
this._swap(arr,j,j-1);
j--;
}
}
console.log(arr);
}
_swap(arr,a,b){
arr[a] = arr[a] + arr[b];
arr[b] = arr[a] - arr[b];
arr[a] = arr[a] - arr[b];
}
}
let myArr = [2,6,8,5,4,1,3];
let mySortUtil = new InsertSort();
mySortUtil.sort(myArr);