20230407 10.4. 排序算法的比较

排序算法比较

排序方法 平均时间复杂度 最坏情况下时间复杂度 额外空间复杂度 稳定性
简单选择排序 \(O(N^2)\) \(O(N^2)\) \(O(1)\) 不稳定
冒泡排序 \(O(N^2)\) \(O(N^2)\) \(O(1)\) 稳定
直接插入排序 \(O(N^2)\) \(O(N^2)\) \(O(1)\) 稳定
希尔排序 \(O(N^d)\) \(O(N^2)\) \(O(1)\) 不稳定
堆排序 \(O(NlogN)\) \(O(NlogN)\) \(O(1)\) 不稳定
快速排序 \(O(NlogN)\) \(O(N^2)\) \(O(logN)\) 不稳定
归并排序 \(O(NlogN)\) \(O(NlogN)\) \(O(N)\) 稳定
基数排序 \(O(P(N+B))\) \(O(P(N+B))\) \(O(N+B)\) 稳定

Java 关联

  • Arrays.sort
posted @ 2023-06-20 11:24  流星<。)#)))≦  阅读(7)  评论(0编辑  收藏  举报