maopao.php
<?php
$arr = [5,6,8,3,4,2,9];
function maopao($arr){
$len = count($arr);
$n = $len -1;
for ($i=0;$i<$len;$i++){
for ($j=0;$j<$n;$j++){
if ($arr[$j]>$arr[$j+1]){
$tmp = $arr[$j];
$arr[$j] = $arr[$j+1];
$arr[$j+1] = $tmp;
}
}
}
return $arr;
}
var_dump(maopao($arr));
效果图:
冒泡排序:对一组数据中的各个相邻数据进行比较,将值小的数据移至在前面,值大的数据就放在后面。也就是要将其数组元素按照从小到大的顺序排列。
需要两次用到for循环。通过第一个for循环来控制数据比较的轮次数,然后通过第二个for循环来控制次数并判断大小交换位置。那么这里的if语句判断的思路就是,如果当前值大于后面的值,就交换位置,把大的值给临时变量$tmp。后面的小值替换大值,大值替换小值。