推广 热搜: 百度  搜索引擎  企业  可以  选择  使用  page  机械设备  参数  上海 

golang 排序

   日期:2024-12-31     作者:knnd9    caijiyuan  
核心提示:不同的排序方式,如有错误请评论指出,我会及时更改冒泡排序及其优化冒泡排序 稳定排序,平均复杂O(n^2) 最优 O(n)  选择排序/

不同的排序方式,如有错误请评论指出,我会及时更改

冒泡排序及其优化

冒泡排序 稳定排序,平均复杂O(n^2) 最优 O(n)


  

选择排序

//选择排序,选择最小和开始交换
好坏平均复杂度 O(n^2) 不稳定


插入排序

插入排序 稳定排序 时间O(n^2)


快排及其优化

快排 不稳定排序 O(nlogn) 还有多路快排优化

  • 初始版本

  • 增加随机数

  • 三路快排
    三路快排,分三部分,1小于tmp部分,等于tmp部分,大于tmp部分
    2022.3.15 全新版本

归并排序

稳定排序 时间O(nlogn) 空间O(n) 有多路归并
归并可以结合很多其他知识 链表,树等等,分治思想很重要(至少面试会问)
海量数据排序可以使用多路归并


希尔排序

间隔插入排序 懒得写了

堆排序

堆排序 不稳定 时间复杂O(nlogn)

建堆时间复杂度为O(n) 计算方式参考
topk问题,优先队列实现,建议手动写堆写下合并链表的题目
leetcode 合并k个排序链表,最优解使用优先队列,和堆有关


  • 另外一种堆排写法,差不多

自行验证


数组中第k大元素

  • 堆排序方式,大顶堆移除堆顶k-1次

  • 快排方式,不需要完全排序,每次只排一遍
    时间复杂度O(n)
本文地址:http://ww.kub2b.com/tnews/3638.html     企库往 http://ww.kub2b.com/ ,  查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类生活信息

文章列表
相关文章
最新动态
推荐图文
生活信息
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号