2016 - 2024

感恩一路有你

公认最好的排序算法 和常用的排序算法外,还有哪些奇葩而有趣的排序算法?

浏览量:1480 时间:2021-03-12 09:11:00 作者:admin

和常用的排序算法外,还有哪些奇葩而有趣的排序算法?

排序算法有:冒泡排序-O(n^2)鸡尾酒排序-O(n^2)插入排序-O(n^2)桶排序-O(n)需要O(k)额外空间计数排序-O(n k)需要O(n k)额外空间合并排序-O(NLog n)需要O(n)额外空间就地合并排序-O(n^2)二叉树排序-O(NLog n)预期时间;O(n^2)最坏时间;O(n)额外空间鸽子洞排序-O(n,K) 额外空间

另一种排序方法

外部排序:需要在内部和外部存储器之间进行多个数据交换

内部排序:外部排序:外部排序:内部排序:外部排序:外部排序:内部排序:外部排序:外部排序:外部排序:内部排序排序:外部排序:外部排序:外部排序:内部排序:外部排序:外部排序:外部排序:内部排序:外部排序:外部排序:内部排序:外部排序:外部排序:内部排序:外部排序:外部排序:外部排序:外部

合并排序

气泡排序快速排序

简单选择排序

堆排序

直接插入排序

希尔排序

插入排序

选择排序

交换排序

合并排序

直接插入排序:当数据按顺序排列时,执行效率最高,时间复杂度为O(n);当数据基本按逆序排列时,执行效率最高执行效率最差,时间复杂度为O(N2)。因此,数据越接近有序,直接插入排序算法的性能越好。希尔排序:时间效率为O(n(log2n)2)直接选择排序:时间效率为O(n^2)-虽然移动次数较少,但比较次数仍然较多。堆排序:时间效率是O(nlog2n)气泡排序:时间效率是O(n^2)-因为我们必须考虑最坏的情况(所有数据元素的顺序相反),当然,最好的情况是所有数据元素都是按顺序排列的,此时,循环是n-1次,时间复杂度为O(n)快速排序:时间效率:一般情况下,时间复杂度为O(nlog2n),最坏情况是所有数据元素都是正序或逆序的。此时,每个标准元素将当前数组划分为一个子数组,子数组的大小比当前数组小1,时间复杂度为O(N2)

公认最好的排序算法 冒泡排序c++代码 排序算法总结

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。