下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 甲状旁腺术后管理策略
- 2026年铁路行业六月铁路运输安全方案
- ICU抗生素使用与管理策略2026
- 小学四年级心理健康教育《我爱我班》
- 2026国内摩托车风镜代工厂深度盘点|源头工厂资质与实力对比
- 简历与职业规划整合方案
- 消防安全规程下载
- 二年级书法上册口字框与门字框课|写法要点
- 《口语守纪习惯训练|遵守规则尊重秩序》
- 第1章 反比例函数(全章题型归纳)(解析版)
- 2026年攀枝花市东区社区工作者招聘笔试参考试题及答案详解
- 2026年山西长治市屯留区公益性岗位人员招聘45人(一)模拟试卷及参考答案详解(考试直接用)
- 电商代运营服务合同模板2026三篇
- 2025天津泰达产业发展集团所属企业员工岗位社会化公开招聘笔试历年参考题库附带答案详解
- 2026年四川省成都市天府新区数学八上期末学业质量监测模拟试题含解析
- 2026年中国邮政集团有限公司吉林省分公司纪检干部社会招聘1人笔试历年典型考点题库附带答案详解
- 昆山啤酒节策划方案
- 国家卫生健康委员会中国结直肠癌诊疗规范(2025版)
- (2026年)围手术期血压管理课件
- 2026届山东省济南市高三三模英语试题(含答案和音频)
- 国企工程管理岗笔试试题及答案
评论
0/150
提交评论