php快速排序
来源:互联网 发布:疯狂追星 知乎 编辑:程序博客网 时间:2024/04/30 21:39
1.数据结构
//调用 $test_array = array (12, 5, 10, 9, 100, - 10 ); $listarray = array (); $sort_array = testsort ( $test_array, 2, 0, 5 ); function testsort($array, $index, $begin, $end) { global $listarray; $listarray = $array; if ($begin < $end) { $index = quicksort2 ( $listarray, $index, $begin, $end ); echo 'left<br>'; testsort ( $listarray, 0, $begin, $index - 1 ); echo 'right<br>'; testsort ( $listarray, $index + 1, $index + 1, $end ); } return $listarray; } //快速排序(快速检索为数组第一个) function quicksort1($array, $begin, $end) { //echo '<br>输入'; //print_r($array); global $listarray; $compare = $array [$begin]; while ( $begin < $end ) { while ( $begin < $end && $array [$end] >= $compare ) $end --; $array [$begin] = $array [$end]; while ( $begin < $end && $array [$begin] <= $compare ) $begin ++; $array [$end] = $array [$begin]; } $array [$begin] = $compare; //echo '<br>输出'; //print_r($array); $listarray = $array; return $begin; } //快速排序(检索样本为数组第f_index个) function quicksort2($array, $f_index, $begin, $end) { global $listarray; $compare = $array [$f_index]; while ( $begin < $end ) { while ( $begin < $end && $array [$end] >= $compare ) $end --; $array [$f_index] = $array [$end]; $f_index = $end; while ( $begin < $end && $array [$begin] <= $compare ) $begin ++; $array [$f_index] = $array [$begin]; $f_index = $begin; } $array [$f_index] = $compare; $listarray = $array; return $f_index; }
2.php数组
$test_array = array (12, 5, 10, 9, 100, - 10 ); $sort_array = testsort ( $test_array, 2, 0, 5 );//快速排序(数组方式) function quicksort($array) { $count = count ( $array ); if ($count <= 1) return $array; $key = $array [0]; $left_array = array (); $middle_array = array (); $right_array = array (); foreach ( $array as $each ) { if ($key > $each) { //入栈 array_push ( $left_array, $each ); } else if ($key == $each) { //直接插入 $middle_array [] = $each; } else { $right_array [] = $each; } } $left_array = quicksort ( $left_array ); $right_array = quicksort ( $right_array ); $array = array_merge ( $left_array, $middle_array, $right_array ); return $array; }
- PHP快速排序
- php版 快速排序
- php 快速排序算法
- php快速排序
- PHP 快速排序法
- PHP快速查找、排序
- 快速排序php写法
- PHP快速排序
- php快速排序
- PHP 快速排序算法
- php快速排序
- PHP实现快速排序
- php快速排序算法
- 快速排序-php实例
- php快速排序
- php快速排序算法
- php快速排序方法
- PHP 快速排序算法
- Linux source code Makefile分析
- DELPHI高性能大容量SOCKET并发(十):IOCP完成端口性能优化
- 如何带领好团队
- android中的OOM问题 解决原则
- 关于Hibernate的sql查询返回值的问题
- php快速排序
- android上的一个网络接口和图片缓存框架enif
- 用paint方法插入图片
- 【C++基本功补习】定时器使用及文件路径提取
- 用C++写个程序,如何判断一个操作系统是16位还是32位的?不能用sizeof()
- java学习笔记15--引用传递
- Oracle CRS的管理与维护
- 解决比较Oracle中CLOB字段问题--转自混世者的专栏
- 大学四年,我学到了什么(二)