下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、多叉堆排序和最佳排序选择 MK,每次调整堆平均操作次数是 M*K/2,MKM*M=N(M:叉数 N:元素个数)时效率是最高的。多叉堆排序代码:/*$arr 待排数组$queen 差数*/function maxHeapSort($arr,$queen)/第一步 构建大顶堆maxInitMaxTopHeap($arr,$queen);/第二步 将堆顶和堆尾逐个交换,新的堆顶必将在其子节点产生,所以从堆尾向前成倒序排列$len = count($arr)-1; for($i=$len;$i=0;$i-)$tmp = $arr$i;$arr$i = $arr0;$arr0 = $tmp; maxFo
2、rkOrder($arr,0,$i,$queen);return $arr;/构建大顶堆完全三叉树 子树节点值小于父节点值function maxInitMaxTopHeap(&$arr,$queen)/M 叉树规则 假设有 N 个元素/那么就有 ceil(N/M) 棵树 即最后一棵树的索引是 ceil(N/M)-1/从最后一颗子树开始处理,把更大的值放在父节点上,直到树的顶端比较完,将最大的值放在树顶$start = ceil(count($arr)/$queen)-1;$end = count($arr)-1; for($start;$start=0;$start-)maxForkOrde
3、r($arr,$start,$end,$queen);return $arr;/*二叉树级联梳理 梳理成完全二叉树$start 开始处理的索引$end结束处理的索引$queen 叉 数*/function maxForkOrder(&$arr,$start,$end,$queen)$children = array(); for($i=0;$i $val)/如果有树if($val = $maxIndex & $val $arr$maxValIndex)$maxValIndex = $val;if($maxValIndex != $start)$temp = $arr$start;$arr$st
4、art = $arr$maxValIndex;$arr$maxValIndex = $temp; maxForkOrder($arr,$maxValIndex,$end,$queen);我测试 2500快速排序:0.040421 秒45 叉排序:1.051701 秒30TPHP快速排序,如果数据很小那就使用插入排序(插入排序没有使用函数小数据排序最佳选择,快速排序使用了递归函数,函数和数据一样是放在内存中的,操作效率是低于操作普通数据的后文会提供代码)。如果 数据大到超出内存阈值怎么办呢,那就把数组分成多块,然后每块使用快速排序吧。/快速排序functionfastSort($arr)if(count($arr) 1)$mid = array_shift($arr);$min = array();$max = array(); foreach($arr AS $val)if($val $mid)$min = $val;else$max =$val;$min =fastSort($min);$max =fastSort($max);return array_merge($min,array($mid),$max);elsereturn $arr;/插入排序function insertSort($arr)$len = count($arr); for($i=1;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 冷链物流断链防控技师考试试卷及答案
- 2025年兖矿能源集团股份有限公司权属企业技能岗位工人招聘(80人)笔试历年参考题库附带答案详解
- 2025山东金曰交通发展集团有限公司招聘10人笔试历年参考题库附带答案详解
- 2025安徽明生电力投资集团有限公司高校毕业生招聘151人(三)笔试历年参考题库附带答案详解
- 2025天津市河西区瑞投数据运营管理有限责任公司招聘5人笔试历年参考题库附带答案详解
- 2025四川虹微技术有限公司招聘软件开发工程师等岗位8人笔试历年参考题库附带答案详解
- 2025四川成都东部集团有限公司及下属企业招聘产业招商等岗位94人笔试历年参考题库附带答案详解
- 2025内蒙古锡林郭勒盟锡林浩特市中国平安人寿支公司招聘51人笔试历年参考题库附带答案详解
- 2025内蒙古呼伦贝尔经济技术开发区招商投资有限责任公司招聘10人笔试历年参考题库附带答案详解
- 2025云南省交通投资建设集团大理管理处收费员岗位招聘(50人)笔试历年参考题库附带答案详解
- 2026届高考地理三轮培优复习 海水性质与海水运动
- 2025年上海市公安机关辅警招聘(面试)复习题及答案
- 2026年及未来5年市场数据中国动物模型行业发展运行现状及投资潜力预测报告
- 电网检修工程预算定额(2020年版)全5册excel版
- 儿童自闭症康复机构运营方案
- 2025年新疆克拉玛依市初中学业水平模拟测试道德与法治、历史试卷卷-初中道德与法治
- 2026年广东省佛山市顺德区中考语文一模试卷
- 足疗店内部劳动保障制度
- 2026年公安联考行测试卷
- GB/T 14916-2022识别卡物理特性
- GB/T 19835-2005自限温伴热带
评论
0/150
提交评论