排序算法的选择

来源:互联网 发布:高中数学补课软件 编辑:程序博客网 时间:2024/05/20 19:19

快排

这里写图片描述

工程应用

这里写图片描述

几乎有序-改进后的堆排序

这里写图片描述
解析:
O(N) 计数排序和基数排序,由于不知道数组范围,不考虑。
O(N^2) 冒泡排序,选择排序,和序列是否有序无关。插入排序O(N*K)
O(N*logN) 快速排序和归并排序也和原数组是否有序无关。改进后的堆排序是最佳。
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

重复元素判断

这里写图片描述
解析:
这里写图片描述
(桶排序)
本题:先排序再判断。空间复杂度为O(1)的排序有:
这里写图片描述
选择堆排序最快。
这里写图片描述
需要改写为非递归方式实现。

合并两个有序数组

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

原创粉丝点击