PHP如何对一组数进行重新排列(冒泡算法)
Posted 在斑马线上散布
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP如何对一组数进行重新排列(冒泡算法)相关的知识,希望对你有一定的参考价值。
如何对已知数组 $arr = [24,69,80,57,13] 进行按重新顺序排序。
思路:
1、我们需要对数组中每两个,前后进行比较,如果前面小于后面的,就进行兑换位置;
2、因为是两个一比较,所以我们需要比较count($arr) - 1 轮,因为每一轮比较下来,都可以确定一个最大的值,所以每一轮就会减少一次。
图示:
代码:
//定义数组 $arr = [24,69,80,57,13]; //定义一个临时变量 $temp = 0; //第一层循环,外层循环,循环count($arr) - 1 次(可以遍历到每一个数组值) for ($i1=0; $i1 < count($arr); $i1++) { //第二层循环,内层循环,每一次外层循环内,再次循环,循环次数依次减少一次(每次循环结束,可以获取到一个最大值) for ($i=0; $i < count($arr) - 1; $i++) { //判断条件,满足即交换值 if($arr[$i] > $arr[$i + 1]){ //临时存储满足条件的变量值 $temp = $arr[$i]; //重新赋值 $arr[$i] = $arr[$i + 1]; //重新赋值 $arr[$i + 1] = $temp; } } } //输出排列后的数组 echo \'<pre>\'; var_dump($arr);
最终结果为:
以上是关于PHP如何对一组数进行重新排列(冒泡算法)的主要内容,如果未能解决你的问题,请参考以下文章