加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP冒泡算法详解(递归实现)

发布时间:2020-12-13 02:08:48 所属栏目:PHP教程 来源:网络整理
导读:《PHP实战:PHP冒泡算法详解(递归实现)》要点: 本文介绍了PHP实战:PHP冒泡算法详解(递归实现),希望对您有用。如果有疑问,可以联系我们。 PHP实战 实现 代码如下: /* ??? 冒泡算法(递归实现) */ PHP实战 function maoPao($array,$index=0) { ??? $cou

《PHP实战:PHP冒泡算法详解(递归实现)》要点:
本文介绍了PHP实战:PHP冒泡算法详解(递归实现),希望对您有用。如果有疑问,可以联系我们。

PHP实战实现

代码如下:

/*
??? 冒泡算法(递归实现)
*/

PHP实战function maoPao($array,$index=0)
{
??? $count = count($array);
??? if(($count-1) <= $index)
??????? return $array;

PHP实战??? for($i=$count-1; $i>$index; $i-- )
??? {
??????? if($array[$i] < $array[$i-1])
??????? {
??????????? $tmp = $array[$i];
??????????? $array[$i] = $array[$i-1];
??????????? $array[$i-1] = $tmp;
??????? }
??? }
??? $index++;
??? return maoPao($array,$index);
??? //return maoPao($array,$index++);
}

PHP实战??? $arr = array(12,4,3,1,9,5,6,8,7);
??? var_dump(maoPao($arr));

PHP实战结果:

代码如下:

Array ( [0] => 1 [1] => 3 [2] => 4 [3] => 5 [4] => 6 [5] => 7 [6] => 8 [7] => 9 [8] => 12 )

PHP实战问题:

PHP实战在尝试这个实现的时候遇到了一个问题,还未办理.
在这里:

代码如下:

$index++;
return maoPao($array,$index);
//return maoPao($array,$index++);

PHP实战/******************
??? 如果直接使用第三行,而不是先$index++,再ruturn的话就会进入死循环.我在函数的开始输出$index,都是0,就是说$index++后传递给递归函数的参数不是$index++应该的结果(即$index=$index+1).
??? maoPao($array,$index++)不是$index++; return maoPao($array,$index);的简短写法吗,为何两种结果不一样,希望能得到各位的解答.
******************/

PHP实战补充:

PHP实战解答:

代码如下:

$index++与++$index两者的区别,$index++被称作后增量,++$index被称为前增量,虽然最后的$index的结果都是会+1. 但传递变量的时候会有不一样的地方.

PHP实战$index = 1;
$m = $index++;
echo $index.'<br/>';? //结果为2
echo $m.'<br/>';????? //结果为1. 因为是后增量,会先把初始的$index=1 赋给$m,然后$index自增1;

PHP实战$index = 1;
$n = ++$index;
echo $index.'<br/>';? //结果为2
echo $n;????????????? //结果为2.因为是前增量,会先执行$index+1的操作,再赋值给$n;

PHP实战这个可能不太好记住,所以在使用的时候必定要注意,在上面的问题中我就是忽略了这个问题导致了$index无限传递0值使得递归锁死.

《PHP实战:PHP冒泡算法详解(递归实现)》是否对您有启发,欢迎查看更多与《PHP实战:PHP冒泡算法详解(递归实现)》相关教程,学精学透。编程之家 52php.cn为您提供精彩教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读