核心思想:相邻的两个数一一比较,大的数上浮,若按从小到大排列的话,大的数向右移动,小的数向左移动,n个数,需要经过n-1轮循环,每一轮循环,需要进行n-i(i代表第i轮循环)次调换,最后可把一列数顺序排列
下面是实现方法:
<?php
function maopao_sort($arr){
$length = count($arr); //计算排序长度
for($i = 0; $i < $length - 1; $i++){
for($j = 0; $j < $length - 1 - $i; $j++){
if($arr[$j] > $arr[$j+1]){
$tmp = $arr[$j];
$arr[$j] = $arr[$j+1];
$arr[$j+1] = $tmp;
}
}
}
var_dump($arr);exit;
}
$data = array(8,4,3,6,5,7,10,4);
maopao_sort($data);
?>