本文汇总了常见的php排序算法,在进行算法设计的时候有不错的借鉴价值。现分享给大家供参考之用。具体如下:
一、插入排序
用文字简单的描述,比如说$arr = array(4,2,4,6,3,6,1,7,9); 这样的一组数字进行顺序排序:
那么,首先,拿数组的第二个元素和第一元素比较,假如第一个元素大于第二元素,那么就让两者位置互换,接下来,拿数组的第三个元素,分别和第二个,第一个元素比较,假如第三个元素小,那么就互换。依次类推。这就是插入排序,它的时间频度是:1+2+...+(n-1)=(n^2)/2。则它的时间复杂度为O(n^2).
php实现代码如下:
<"htmlcode"><"htmlcode"><"htmlcode"><"htmlcode"><"htmlcode"><?php function fixDown(&$arr, $k, $lenth) { while(2*$k<=$lenth) { //只要当前节点有子节点, 就需要继续该循环 $j = $k*2; if ($j<$lenth && $arr[$j]<$arr[$j+1]) $j++; // 只要子节点有右节点,且右节点比左节点大,那么切换到右节点操作。 if ($arr[$j] < $arr[$k]) break; // 如果子节点都没有父节点大, 那么调整结束。 exch($arr[$j], $arr[$k]); $k = $j; } } function exch(&$a, &$b) { $tmp = $a; $a = $b; $b = $tmp; } function headSort(&$arr) { $len = count($arr); array_unshift($arr, NULL); for($i=$len/2;$i>=1;$i--) { fixDown($arr, $i, $len); } while($len>1) { exch($arr[1], $arr[$len]); fixDown($arr, 1, --$len); } array_shift($arr); } $arr = array(4,6,4,9,2,3); headSort($arr); ?>希望本文所述排序算法实例对大家的php程序设计有所帮助。
华山资源网 Design By www.eoogi.com广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!华山资源网 Design By www.eoogi.com暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
2024年09月21日
2024年09月21日
- 杨阳《约定HQCDII》头版限量编号2024[WAV+CUE]
- 曝《黑神话:悟空》DLC明年推出 农历新年前后
- PS5日本涨价19% 索尼股价应声上涨2.7%
- 《黑神话》发行平台遭大规模网攻 外媒却鲜有报道
- 伍佰《爱你伍佰年 世纪典藏原音精选3CD》[WAV+CUE][2.3GB]
- 伍佰《爱情的尽头》[WAV+CUE][2.6GB]
- 伍佰 《光环摇滚之声DSD》[WAV+CUE][500MB]
- 王菲.1999-只爱陌生人【EMI百代】【WAV+CUE】
- 林美音.1993-酒后的心声【瑞华】【WAV+CUE】
- 群星.2024-凡人歌电视剧原声带【正午阳光】【FLAC分轨】
- 黑神话悟空上品骨悚然精魄获取方法一览|上品骨悚然精魄收集攻略
- 《演灭Evotinction》正式登陆多平台发售!带你进入科幻潜行新境界
- 命运圣契2024公测最新兑换码大全 命运圣契开服可用兑换码汇总
- 银霞.1979-《回答·兰花草》新加坡限量复黑版[WAV+CUE]
- 王菲.1996-《乐乐精逊SACD日本限量版[WAV+CUE]