插入排序简介:
插入排序有两个循环。外循环依次选中除了0位的元素,而内循环则对外循环选中的元素及它前面的元素进行比较,如果外循环中选出的元素比内循环中的小,那么数组元素会向右移动,为外循环中的元素空出位置。
1 //插入排序 2 function insertionSort(arr) { 3 var temp, 4 index; 5 for (var outer = 1; outer <= arr.length - 1; outer++) { 6 temp = arr[outer]; 7 index = outer; 8 while (index > 0 && arr[index - 1] >= temp) { 9 arr[index] = arr[index - 1]; 10 --index; 11 } 12 arr[index] = temp; 13 } 14 return arr; 15 } 16 console.log(insertionSort(aArray));