PHP如何实现计数排序的代码

PHP如何实现计数排序的代码

内容导读

收集整理的这篇技术教程文章主要介绍了PHP如何实现计数排序的代码,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1062字,纯文字阅读大概需要2分钟

内容图文

这篇文章给大家介绍的内容是关于PHP如何实现计数排序的代码,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
/** * 计数排序: 桶排序的一种 */$arr = [5,69,4,32,14,8,74,95,23,56,41,5,31,63];// include 'data.php';$length = count($arr);$maxValue = $arr[0];// 找出数组中的最大值for ($i=1; $i < $length; $i++) {

if ($arr[$i] > $maxValue) {



$maxValue = $arr[$i];

}}/** * 定长数组, 键会自动排序, PHP数组是hash表的实现, * 如果这里用普通的数组, 键不会自动排序, 不存在的键也不会自动填充null */$frequency = new SplFixedArray($maxValue + 1);/** * 统计arr中, 值出现的频次 */for ($i=0; $i < $length; $i++) {

if(empty($frequency[$arr[$i]]))



$frequency[$arr[$i]] = 0;

$frequency[$arr[$i]] += 1;}// 清空$arr$arr = [];// 遍历frequency, 如果其元素有值, 那么将键push到arr中for ($i=0; $i < count($frequency); $i++) {

if (!empty($frequency[$i])) {



for ($j=0; $j < $frequency[$i]; $j++) {





$arr[] = $i;



}

}}print_r($arr);

相关文章推荐:

php中echo()函数的用法(附代码)

Nginx如何来配置隐藏入口文件index.php(代码)

以上就是PHP如何实现计数排序的代码的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的PHP如何实现计数排序的代码全部内容,希望文章能够帮你解决PHP如何实现计数排序的代码所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com