插入排序
插入排序
插入排序的基本工作原理:对于未排序列,在已排序列中从后向前扫描,找到相应的位置并插入。其中时间复杂度O(n^2),空间复杂度O(1),算法相对稳定。
function insertionSort(arr) { var length = arr.length; for (var i = 0; i < length; i++) { var preIndex = i - 1; var cur = arr[i]; while (preIndex>=0&&arr[preIndex]>cur) { arr[preIndex + 1] = arr[preIndex]; preIndex--; } arr[preIndex+1] = cur; } return arr; } console.log(insertionSort([3,1,7,45,3,2]));