推广 热搜: 广告  项目  账号  设备  系统  优化  服务  百度    行业 

排序

   日期:2024-12-20     作者:n4id2    caijiyuan  
核心提示:1:基本思想-选择一个基准元素,将比基准元素小的元素放在其前面,比基准元素大的元素放在其后面,然后:再将小于其基准值元素的

1:基本思想-选择一个基准元素,将比基准元素小的元素放在其前面,比基准元素大的元素放在其后面,然后:再将小于其基准值元素的子数列和大于基准元素的子数列按原来的方法排序。

排序

2:优点-极快,数据移动少。缺点-不稳定(相同值的相对位置有发生改变)。

3:效率分析-此排序算法的效率在序列越乱的时候,效率越高。在数据有序时,会退化成冒泡排序。

4:对于基准的选择-三数(low、mid、high)中取、随机选取基准。

5:优化方法-a.当待排序序列的长度分割到一定大小后,使用插入排序(对于很小和部分有序的数组,快排不如插排好)。b.再一次分割结束后,可以把与key相等的元素聚集在一起,继续下次分割时,不必再对于key相等的元素分割。

6:最坏的时候(O(n2))也就是在随机快速排序的partition过程的时候每次选取标志数的时候都大或者最小值,

 

1:二叉堆定义-二叉堆是完全二叉树或近似完全二叉树。满足特性a.父节点的键值总大于或等于(小于或等于)任何一个子节点的键值。b.每个节点的左子树和右子树都是一个二叉堆。

2:堆的存储-一般用数组来表示堆,i结点的父节点下标是(i-1)/2,它的左右节点的下标分别是2*i+1和2*i+2。

3:应用-寻找M个数中前k个最小的数并保持有序。时间复杂度:O(K)[创建K个元素最大堆的时间复杂度] +M-K*log(K)[对剩余M-K个数据进行比较并每次对最大堆进行从新最大堆化]

4:不稳定(相同值的相对位置有发生改变);

5:实现(构建堆,调整堆)

1:基本思想-首先将初始序列的n个记录看成n个有序的子序列,每个子序列的长度为1,然后两两合并,得到n/2个长度为2的有序子序列,…以此类推,直到得到一个长度为n的有序序列为止。

2:适用场景-n较大,并且要求排序稳定,则可以选择归并排序。

本文地址:http://gzhdwind.xhstdz.com/xwnews/615.html    物流园资讯网 http://gzhdwind.xhstdz.com/ , 查看更多

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

 
 
更多>同类生活信息

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