修炼内功---数据结构与算法12---快速排序
生活随笔
收集整理的這篇文章主要介紹了
修炼内功---数据结构与算法12---快速排序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
https://blog.csdn.net/adusts/article/details/80882649
這個博客寫的很好
<?phpfunction quick_sort($nums) {if (count($nums) <= 1) {return $nums;}quick_sort_c($nums, 0, count($nums) - 1);return $nums; }function quick_sort_c(&$nums, $p, $r) {if ($p >= $r) {return;}$q = partition($nums, $p, $r);quick_sort_c($nums, $p, $q - 1);quick_sort_c($nums, $q + 1, $r); }// 尋找pivot function partition(&$nums, $p, $r) {$pivot = $nums[$r];$i = $p;for ($j = $p + 1; $j < $r; $j++) {// 原理:將比$pivot小的數丟到[$p...$i-1]中,剩下的[$i..$j]區間都是比$pivot大的if ($nums[$j] < $pivot) {$temp = $nums[$i];$nums[$i] = $nums[$j];$nums[$j] = $temp;$i++;}}// 最后將 $pivot 放到中間,并返回 $i$temp = $nums[$i];$nums[$i] = $pivot;$nums[$r] = $temp;return $i; }$nums = [4, 5, 6, 3, 2, 1]; $nums = quick_sort($nums); print_r($nums);?
總結
以上是生活随笔為你收集整理的修炼内功---数据结构与算法12---快速排序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Machine Learning, C
- 下一篇: 30岁买房只需记住一句话,永远不会出错!