一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - PHP兩種快速排序算法實例

PHP兩種快速排序算法實例

2020-09-05 14:10PHP教程網 PHP教程

這篇文章主要介紹了PHP兩種快速排序算法實例,本文直接給出實現代碼,分別使用遞歸法、迭代法實現,需要的朋友可以參考下

雖然在PHP這樣的web應用開發中,我們不是太強調排序的重要性,因為PHP自身已經帶了例如sort()等這樣強大的排序函數,但是在一些重要的場合,例如某些高并發的場合,我想排序算法的影響已經不能忽略。所以在此介紹遞歸排序和迭代排序。

遞歸法

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/**
* 遞歸法實現的快速排序
*/
function quicksort($seq)
{
    $k = $seq[0];
    $x = array();
    $y = array();
    for($i=1; $i< $_size; $i++) {
      if($seq[$i] <= $k) {
        $x[] = $seq[$i];
      } else {
        $y[] = $seq[$i];
      }
    }
    $x = quicksort($x);
    $y = quicksort($y);
    return array_merge($x, array($k), $y);
  } else {
    return $seq;
  }
}

迭代法:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/**
* 迭代法的快速排序
*/
function quicksortx(&$seq)
{
  $stack = array($seq);
  $sort = array();
  while ($stack) {
    $arr = array_pop($stack);
    if(count($arr) <= 1) {
      if(count($arr) == 1) {
        $sort[] = &$arr[0];
      }
      continue;
    }
    $k = $arr[0];
    $x = array();
    $y = array();
    $_size = count($arr);
    for($i =1 ;$i < $_size; $i++) {
      if($arr[$i] <= $k) {
        $x[] = &$arr[$i];
      } else {
        $y[] = &$arr[$i];
      }
    }
    !empty($y) && array_push($stack, $y);
    array_push($stack, array($arr[0]));
    !empty($x) && array_push($stack, $x);
  }
  return $sort;
}

使用:

?
1
2
3
4
5
6
7
8
9
10
/**
*產生一個隨機數組
*/
for($i=0;$i<5;$i++){
  $testArr[]=mt_rand(0,100);
}
var_dump($testArr);
var_dump(quicksort($testArr));
 
var_dump(quicksortx($testArr));

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 無码一区中文字幕少妇熟女网站 | 亚洲国产成人久久综合一区77 | 99re5精品视频在线观看 | 国偷盗摄自产福利一区在线 | 天天排行网 | 麻豆视频网 | 免费在线观看日本 | free性俄罗斯护士 | 精品视频一区二区三区 | 第一次破学生处破 | 亚洲精品视频在线 | 国产精品思瑞在线观看 | 国产精品露脸国语对白99 | 日本zzzzwww大片免费 | 欧美高清无砖专区欧美精品 | 网红思瑞一区二区三区 | 国产高清国内精品福利 | 亚洲成色WWW久久网站夜月 | 久久黄色录像 | 风间由美理论片在线观看 | 国语在线| 欧美 变态 另类 人妖班 | 久久久免费观成人影院 | 亚洲美洲国产日产 | 538免费精品视频搬运工 | 国产香蕉在线视频 | 久久综久久美利坚合众国 | 5555国产在线观看精品 | 亚洲精品私拍国产福利在线 | 午夜影院费试看黄 | yy6080午夜国产免费福利 | 亚洲欧美日韩另类精品一区二区三区 | 久久人妻无码毛片A片麻豆 久久热这里只有 精品 | 久久学生精品国产自在拍 | 91久久国产成人免费观看资源 | 色综合天天五月色 | 国产成人精品一区二三区 | 完整秽淫刺激长篇小说 | 隔壁老王国产精品福利 | 高清一区高清二区视频 | ssni-497新任美脚女教师 |