加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP全排列算法实现程序代码介绍

发布时间:2022-07-26 15:00:46 所属栏目:PHP教程 来源:互联网
导读:从n个不同元素中任取m(mn)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。 简介 如1,2,3三个元素的全排列为: 1,2,3 1,3,2 2,1,3 2,3,1 3,1,2 3,2,1 共3*2*1=6种 3! 2公式 全排列数f(n)=n!(定
     从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。
 
  简介
 
  如1,2,3三个元素的全排列为:
 
  1,2,3
 
  1,3,2
 
  2,1,3
 
  2,3,1
 
  3,1,2
 
  3,2,1
 
  共3*2*1=6种 3!
 
  2公式
 
  全排列数f(n)=n!(定义0!=1)
 
  递归算法
 
  1,2,3
 
  1,3,2
 
  2,1,3
 
  2,3,1
 
  3,2,1
 
  3,1,2
 
  这是由于算法只是考虑到了如何输出全排列,而没有考虑到换位是否有问题。所以我提出了解决方案,就是换位函数修改下
 
  如 1 2 3 换位的话 ,不应该直接 3 2 1这样 ,让3和1直接换位; 而是让3排在最前后 ,1 2 依次向后
 
  基本算法
 
  以下介绍全排列算法四种:
 
  (A)字典序法
 
  (B)递增进位制数法
 
  (C)递减进位制数法
 
  (D)邻位对换法
 
  实现全排列算法。

(编辑:衡阳站长网)

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

    热点阅读