每天学习一点算法,积累起来就会有自己的思想,有些事情不一定有天赋才能做好,勤能补拙,熟能生巧。硅步千里,积少成多。
冒泡排序:
顾名思义,比如水池里有10个气泡,由下至上的两两比较,较大的就上升一位,直到浮出水面。
function bubbleSort($arr) {
$count = count($arr);
//这个循环是控制比较的次数,10个数组元素为例,需要比较9次
for($j=1; $j<$count; $j++) {
//每比较过一次后,
for($i=0; $i<$count-$j; $i++) {
//比较大小
if($arr[$i] > $arr[$i+1]) {
//两两交换
$middle = $arr[$i];
$arr[$i] = $arr[$i+1];
$arr[$i+1] = $middle;
}
}
}
return $arr;
}
$arr = array('1','22','12','8','101','221','79','56','34','1000');
print_r(bubbleSort($arr));
最终的输出结果: