首页 > 编程语言 > 详细

冒泡排序和快速排序

时间:2016-03-12 00:04:09      阅读:247      评论:0      收藏:0      [点我收藏+]

冒泡排序

<?php
$a = array(12,6,45,8,34,9);
$n = count($a);
for($i=0;$i<$n-1;++$i){//用于控制比较的趟数
      for($j=0;$j<$n-1-$i;++$j){ //用于控制比较的次数
          if($a[$j]>$a[$j+1]){ //如果前一个大于后一个数 需要交换
               $temp = $a[$j];
               $a[$j] = $a[$j+1];
               $a[$j+1] = $temp;
         }
     }
}
print_r($a);

 

选择排序

$b = array(12,18,8,33,45,11);
$n = count($b);
for($i=0;$i<$n-1;++$i){ //控制的趟数
    $max = $b[0];//每一躺都取得第一个数据
    $pos = 0;//并取得对应的下标
    for($j=0;$j<$n-$i;$j++){
         if($b[$j]>$max){
              $max = $b[$j];
              $pos = $j;
         }
    }
        //只有上面的for循环结束 才能找到每一躺中的最大值及其下标 然后互换位置
        $temp = $b[$pos];
        $b[$pos] = $b[$n-$i-1];
        $b[$n-$i-1] = $temp;
}
print_r($b);

冒泡排序和快速排序

原文:http://www.cnblogs.com/chenchenphp/p/5267507.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!