冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。
它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,故名。
原理图
实现代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| <?php
$demo_array = array(23,15,43,25,54,2,6,82,11,5,21,32,65);
for ($i=0;$i<count($demo_array);$i++) { for ($j=$i+1;$j<count($demo_array);$j++) { if ($demo_array[$i] > $demo_array[$j]) { $tmp = $demo_array[$i]; $demo_array[$i] = $demo_array[$j]; $demo_array[$j] = $tmp; } } }
echo '<pre>'; var_dump($demo_array); echo '</pre>';
array(13) { [0] => int(2) [1] => int(5) [2] => int(6) [3] => int(11) [4] => int(15) [5] => int(21) [6] => int(23) [7] => int(25) [8] => int(32) [9] => int(43) [10] => int(54) [11] => int(65) [12] => int(82) }
|