中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php冒泡排序與快速排序的實例介紹

發布時間:2021-08-05 23:30:13 來源:億速云 閱讀:127 作者:chen 欄目:開發技術

本篇內容主要講解“php冒泡排序與快速排序的實例介紹”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“php冒泡排序與快速排序的實例介紹”吧!

本文實例分析了php冒泡排序與快速排序算法。分享給大家供大家參考,具體如下:

$a=array('3','8','1','4','11','7');
print_r($a);
$len = count($a);
//從小到大
for($i=1;$i<$len;$i++)
{
for($j=$len-1;$j>=$i;$j--)
if($a[$j]<$a[$j-1])
{//如果是從大到小的話,只要在這里的判斷改成if($b[$j]>$b[$j-1])就可以了
 $x=$a[$j];
 $a[$j]=$a[$j-1];
 $a[$j-1]=$x;
}
}
print_r($a);j
//另一種方法 從小到大
$b=array('4','3','8','9','2','1');
$len=count($b);
for($k=1;$k<$len;$k++)
{
for($j=$len-1,$i=0;$i<$len-$k;$i++,$j--)
if($b[$j]<$b[$j-1]){
//如果是從大到小的話,只要在這里的判斷改成if($b[$j]>$b[$j-1])就可以了
 $tmp=$b[$j];
 $b[$j]=$b[$j-1];
 $b[$j-1]=$tmp;
}
print_r($b);
echo "
";
}
//下面的這個執行效率更高
function maopao($arr)
{
 $len = count($arr);
 for($i=1; $i<$len; $i++)//最多做n-1趟排序
 {
 $flag = false;  //本趟排序開始前,交換標志應為假
 for($j=$len-1;$j>=$i;$j--)
 {
  if($arr[$j]<$arr[$j-1])//交換記錄
  {//如果是從大到小的話,只要在這里的判斷改成if($arr[$j]>$arr[$j-1])就可以了
   $x=$arr[$j];
   $arr[$j]=$arr[$j-1];
   $arr[$j-1]=$x;
   $flag = true;//發生了交換,故將交換標志置為真
  }
 }
 if(! $flag)//本趟排序未發生交換,提前終止算法
 return $arr;  
 }
}
$shuz = array('2','4','1','8','5');
$bb = maopao($shuz);
print_r($bb);
// 快速排序
function kuaisu($arr){
  $len = count($arr);
  if($len <= 1){
    return $arr;
  }
  $key = $arr[0];
  $left_arr = array();
  $right_arr = array();
  for($i=1; $i<$len;$i++){
    if($arr[$i] <= $key){
      $left_arr[] = $arr[$i];
    }else{
      $right_arr[] = $arr[$i];
    }
  }
  $left_arr = kuaisu($left_arr);
  $right_arr = kuaisu($right_arr);
  return array_merge($left_arr, array($key), $right_arr);
}
$arr = array(23,98,54,2,9,62,34);
print_r(kuaisu($arr));

到此,相信大家對“php冒泡排序與快速排序的實例介紹”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

荃湾区| 宝山区| 济南市| 平顺县| 汽车| 富顺县| 永济市| 莒南县| 阜南县| 达孜县| 丰台区| 塘沽区| 泰州市| 峨山| 育儿| 镇安县| 竹北市| 安岳县| 金堂县| 永定县| 肇东市| 镇沅| 崇义县| 西华县| 同江市| 商南县| 南丹县| 伊通| 鄱阳县| 元谋县| 灌南县| 开阳县| 元朗区| 富川| 营口市| 茶陵县| 兴海县| 铜陵市| 富裕县| 建昌县| 轮台县|