最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php冒泡排序與快速排序?qū)嵗斀?/h1>
 更新時(shí)間:2015年12月07日 09:55:23   作者:流星飛雨  
這篇文章主要介紹了php冒泡排序與快速排序?qū)崿F(xiàn)方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了phpphp排序算法的遞歸、遍歷運(yùn)算及流程控制的相關(guān)技巧,需要的朋友可以參考下

本文實(shí)例分析了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 "
";
}
//下面的這個(gè)執(zhí)行效率更高
function maopao($arr)
{
 $len = count($arr);
 for($i=1; $i<$len; $i++)//最多做n-1趟排序
 {
 $flag = false;  //本趟排序開(kāi)始前,交換標(biāo)志應(yīng)為假
 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;//發(fā)生了交換,故將交換標(biāo)志置為真
  }
 }
 if(! $flag)//本趟排序未發(fā)生交換,提前終止算法
 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));

希望本文所述對(duì)大家php程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論

托克逊县| 玉龙| 永新县| 尼木县| 柳江县| 柳州市| 济阳县| 长顺县| 苍梧县| 汶上县| 林口县| 高雄县| 弥勒县| 宝丰县| 昆山市| 琼海市| 五台县| 鄂州市| 麟游县| 临洮县| 沈阳市| 五大连池市| 隆回县| 梁平县| 芦山县| 安丘市| 龙口市| 辽中县| 曲周县| 隆昌县| 涟源市| 永仁县| 阳谷县| 南汇区| 宜阳县| 旺苍县| 平顶山市| 西城区| 望江县| 谢通门县| 丰顺县|