php数据结构与算法(PHP描述)快速排序quicksort_PHP
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php数据结构与算法(PHP描述)快速排序quicksort_PHP,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1223字,纯文字阅读大概需要2分钟。
内容图文
![php数据结构与算法(PHP描述)快速排序quicksort_PHP](/upload/InfoBanner/zyjiaocheng/251/ba1aae1a5ff7428ab61e272c9a2555d8.jpg)
<?php
/**
* 快速排序 quick sort
*
**/
function sort_quick($arrData) {
if(empty($arrData) || !is_array($arrData)) return false;
$flag = $arrData[0];
$len = count($arrData) - 1;
if($len == 0) return $arrData; // 如果只有一个数据的数组直接返回
$arrLeft = array();
$arrRight = array();
$len_l = 0;
$len_r = 0;
for($i = 1; $i <= $len;$i++) {
if($arrData[$i] < $flag) {
$arrLeft[$len_l] = $arrData[$i]; // 小于的放左边
$len_l++;
} else {
$arrRight[$len_r] = $arrData[$i]; // 大于等于的放右边
$len_r++;
}
}
// 合并数组
$arrResult = array();
if($len_l) {
$arrLeft = sort_quick($arrLeft);
for($i = 0;$i <= $len_l - 1; $i++ ) {
$arrResult[$i] = $arrLeft[$i];
}
}
$arrResult[$len_l] = $flag;
$len_l++;
if($len_r) {
$arrRight = sort_quick($arrRight);
for($i = 0;$i <= $len_r - 1; $i++ ) {
$arrResult[$len_l] = $arrRight[$i];
$len_l++;
}
}
echo "== ",$flag," ==========================================
";
echo "data : ",print_r($arrData),"
";
echo "filter left: ",print_r($arrLeft),"
";
echo "filter right: ",print_r($arrRight),"
";
echo "return : ",print_r($arrResult),"
";
return $arrResult;
}
//$list = array(4,3,2,1,5,7,3,7);
$list = array(4,51,6,73,2,5,9,33,50,3,4,6,1,4,67);
$list = sort_quick($list);
echo "";print_r($list);
内容总结
以上是互联网集市为您收集整理的php数据结构与算法(PHP描述)快速排序quicksort_PHP全部内容,希望文章能够帮你解决php数据结构与算法(PHP描述)快速排序quicksort_PHP所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。