排序算法| Array.sort()算法规则
1、js的Array.sort()是使用什么算法排序; 1、火狐中是“ 归并排序 ” 2、V8引擎是 “ 插入排序和快速排序结合 ”。数组长度不超过10时,使用插入排序。长度超过10使用快速排序。在数组较短时插入排序更有效率。 算法复杂度: 最好情况:O(nlogn) 最坏情况:O(nlogn) 平均情况:O(nlogn) 归并排序需要一个与原数组相同长度的数组做辅助来排序 空间复杂度:O(n) 稳定性:稳定(归并排序是稳定的排序算法, temp[i++] = arr[p1] <= arr[p2] ? arr[p1++] : arr[p2++]; 这行代码可以保证当左右两部分的值相等的时候,先复制左边的值,这样可以保证值相等的时候两个元素的相对位置不变。) 选择排序、冒泡、插入、快速、 来源: https://www.cnblogs.com/liujinyu/p/11831464.html