--PHP 实现冒泡排序(Bubble Sort)
2016-08-16 本文已影响87人
Hsinlung
--核心思想
---例如:$arr=array(10,7,1);该数组中数字从小到大排序
---1.让数组中前面的数10和后面的数7进行比较,10>7,则交换数据位置(就变成了$arr=array(7,10,1);),然后让后数字10和数字1进行比较,10>1大,交换数据位置($arr=array(7,1,10);)--说明进行了第1次大循环,其中有2次比较
$arr=array(7,1,10),中数字7和1比较,7>1,交换数据位置,最终得到了我们需要的结果($arr=array(1,7,10);)---说明进行了第2次大循环,其中只有1次比较
---2.通过上面一次大循环,确定了一个数的位置(10的位置)
---冒泡的规律
---大循环的次数是数组的大小 -1
---其中每次大循环的比较次数是逐渐 -1
---代码实现
---代码优化(提高执行效率)
---对于有序数组 例如$arr = array(1,2,3,4,5,6);本来就是一个从小到大的顺序,这样就没有必要再进行反复比较。