【DAY.5】PHP数据结构与算法_排序_快速排序
来源:互联网 发布:linux 修改cfg文件 编辑:程序博客网 时间:2024/05/21 12:39
思路分析:快速排序是在冒泡排序的基础上做的升级,以第一个元素为标尺,对无序数组进行分割,大的部分组成一个临时数组,小的部分组成另一个临时数组,再分别将两个临时数组递归分割,直至只剩一个元素,将所有临时数组(只剩了单个元素),进行组合,就合成了新的有序数组。
$arr = array(9,3,4,1,7,10,8,2,5,6);
function part_sort($array){
$len=count($array);
if($len<=1){
return $array;
}
$lpart = array();
$rpart = array();
for($i=1;$i<$len;$i++){
if($array[$i]<=$array[0]){
$lpart[]=$array[$i];
}else{
$rpart[]=$array[$i];
}
}
$lpart = part_sort($lpart);
$rpart = part_sort($rpart);
$arr = array_merge($lpart,array($array[0]),$rpart);
return $arr;
}
echo "<pre>";
print_r(part_sort($arr));
echo "</pre>";
0 0
- 【DAY.5】PHP数据结构与算法_排序_快速排序
- 【DAY.2】PHP数据结构与算法_排序_冒泡排序
- 【DAY.3】PHP数据结构与算法_排序_选择排序
- 【DAY.4】PHP数据结构与算法_排序_插入排序
- 【DAY.7】PHP数据结构与算法_排序_堆排序
- 【DAY.8】PHP数据结构与算法_排序_希尔排序
- 数据结构与算法_快速排序
- 数据结构_快速排序算法
- 数据结构_快速排序
- 排序_算法_数据结构
- 基础数据结构算法_快速排序,堆排序,归并排序
- 数据结构与算法_排序算法
- 排序算法_快速排序
- 排序算法_快速排序
- 快速排序_排序算法
- 数据结构与算法_冒泡排序
- 数据结构与算法_选择排序
- 数据结构与算法_插入排序
- 一起来写ftp server 01 -- 简易版本
- Java提升篇(一)---内部类
- DB2 重启
- Hibernate4 提示Could not obtain transaction-synchronized Session for current thread
- java向上转型与向下转型
- 【DAY.5】PHP数据结构与算法_排序_快速排序
- 解决NDK开发中的 Method 'NewStringUTF' could not be resolved
- UVA 1103
- js中强制类型转换的结果以及if语句传入不同结果的反馈
- 不用加减乘除做加法
- mysql安装好后设置账号和密码
- 如何做到招聘要求中的「要有扎实的 Java 基础」
- 【九层之台,起于累土】初识UML
- linux搭建网站环境总结