/** * 1、冒泡算法:就是像冒泡一样,每次从数组当中 冒一个最大的数出来。 * ①.比较相邻的元素。如果第一个比第二个大,就交换他们两个。 * ②.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 */ $arr=array(12,66,32,78,36); function getpao($arr) { $len=count($arr); $count = 0; $num= 0 ; // var_dump($len); //设置一个空数组 用来接收冒出来的泡 //该层循环控制 需要冒泡的轮数 for($i=0;$i<$len;$i++) { //该层循环用来控制每轮 冒出一个数 需要比较的次数 $count++; //总共循环四次 for($k=0;$k<$len-$i-1;$k++) { $num++; // 总共循环10次 if($arr[$k]>$arr[$k+1]) { var_dump($arr[$k],"和".$arr[$k+1]); $tmp=$arr[$k+1]; $arr[$k+1]=$arr[$k]; $arr[$k]=$tmp; var_dump("结束判断:"); var_dump($arr); } } } var_dump($count,$num); return $arr; } //var_dump(getpao($arr));