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


Posted in PHP onNovember 10, 2017

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

<?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为例,输出如下:

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程序设计有所帮助。

PHP 相关文章推荐
PHP重定向的3种方式
Mar 07 PHP
php读取mysql的简单实例
Jan 15 PHP
php 过滤英文标点符号及过滤中文标点符号代码
Jun 12 PHP
php中JSON的使用与转换
Jan 14 PHP
php获取错误信息的方法
Jul 17 PHP
PHP中Session和Cookie是如何操作的
Oct 10 PHP
通过PHP自带的服务器来查看正则匹配结果的方法
Dec 24 PHP
php实现跨域提交form表单的方法【2种方法】
Oct 17 PHP
PHP+Ajax实现的无刷新分页功能详解【附demo源码下载】
Jul 03 PHP
Laravel 5.5官方推荐的Nginx配置学习教程
Oct 06 PHP
PHP实现实时生成并下载超大数据量的EXCEL文件详解
Oct 23 PHP
php实现大文件断点续传下载实例代码
Oct 01 PHP
PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法
Nov 10 #PHP
PHP用函数嵌入网站访问量计数器
Oct 27 #PHP
PHP实现网站访问量计数器
Oct 27 #PHP
在 Laravel 中 “规范” 的开发短信验证码发送功能
Oct 26 #PHP
详解php 使用Callable Closure强制指定回调类型
Oct 26 #PHP
php静态成员方法和静态的成员属性的使用方法
Oct 26 #PHP
PHP中类型转换 ,常量,系统常量,魔术常量的详解
Oct 26 #PHP
You might like
php隐藏实际地址的文件下载方法
2015/04/18 PHP
php使用函数pathinfo()、parse_url()和basename()解析URL
2016/11/25 PHP
Yii2汉字转拼音类的实例代码
2017/04/18 PHP
php微信支付之公众号支付功能
2018/05/30 PHP
准确获得页面、窗口高度及宽度的JS
2006/11/26 Javascript
关于文本框的一些限制控制总结~~
2010/04/15 Javascript
有道JavaScript监听浏览器的问题
2010/06/23 Javascript
JavaScript使用过程中需要注意的地方和一些基本语法
2010/08/26 Javascript
使用JQuery和CSS模拟超链接的用户单击事件的实现代码
2012/05/23 Javascript
用javascript模仿ie的自动完成类似自动完成功的表单
2012/12/12 Javascript
jquery表格内容筛选实现思路及代码
2013/04/16 Javascript
关于页面嵌入swf覆盖div层的问题的解决方法
2014/02/11 Javascript
在JavaScript中构建ArrayList示例代码
2014/09/17 Javascript
JavaScript字符串删除重复字符的方法
2015/12/25 Javascript
非常棒的jQuery图片轮播效果
2016/04/17 Javascript
前端jquery部分很精彩
2016/05/03 Javascript
jquery实现全选和全不选功能效果的实现代码【推荐】
2016/05/05 Javascript
JavaScript必知必会(九)function 说起 闭包问题
2016/06/08 Javascript
jQuery 3.0十大新特性
2016/07/06 Javascript
js实现带简单弹性运动的导航条
2017/02/22 Javascript
vue中的非父子间的通讯问题简单的实例代码
2017/07/19 Javascript
微信小程序中换行空格(多个空格)写法详解
2018/07/10 Javascript
Python导入txt数据到mysql的方法
2015/04/08 Python
Python实现自定义读写分离代码实例
2019/11/16 Python
Python通过Pillow实现图片对比
2020/04/29 Python
python中导入 train_test_split提示错误的解决
2020/06/19 Python
python实现数字炸弹游戏
2020/07/17 Python
scrapy中如何设置应用cookies的方法(3种)
2020/09/22 Python
Hanky Panky官方网站:内衣和睡衣
2019/07/25 全球购物
Nanushka官网:匈牙利服装品牌
2019/08/14 全球购物
婚鞋、新娘鞋、礼服鞋、童鞋:Nina Shoes
2019/09/04 全球购物
书香校园活动方案
2014/02/28 职场文书
花坛标语大全
2014/06/30 职场文书
乡镇八一建军节活动方案
2014/08/24 职场文书
有关九一八事变的演讲稿
2014/09/14 职场文书
新生开学寄语大全
2015/05/28 职场文书