PHP实现基于图的深度优先遍历输出1,2,3…n的全排列功能

2025-05-29 0 57

本文实例讲述了PHP实现基于的深度优先遍历输出1,2,3…n的全排列功能。分享给大家供大家参考,具体如下:

?

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
<?php

$n=$_REQUEST["n"];

if($n>8)

{

echo "{$n}太大了,影响服务器性能";

return;

}

define("N",$n);

$d=array();

$v=array();

for($i=0;$i<=N;$i++){

$d[$i]=$v[$i]=0;

}

function dfs($depth){

global $d,$v;

if($depth>=N){

for($i=0;$i!=N;$i++){

echo $d[$i];

}

echo "<br>";

return;

}

for($i=1;$i<=N;$i++){

if($v[$i]==0){

$v[$i]=1;

$d[$depth]=$i;

dfs($depth+1);

$v[$i]=0;

}

}

}

dfs(0);

这里以get方法传入参数n=4为例,输出如下:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24
1234

1243

1324

1342

1423

1432

2134

2143

2314

2341

2413

2431

3124

3142

3214

3241

3412

3421

4123

4132

4213

4231

4312

4321

希望本文所述对大家PHP程序设计有所帮助。

原文链接:http://blog.csdn.net/jingbing082619/article/details/47082401

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 PHP实现基于图的深度优先遍历输出1,2,3…n的全排列功能 https://www.kuaiidc.com/93529.html

相关文章

发表评论
暂无评论