设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 手机 公司 数据
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2022-07-25 12:52 所属栏目:121 来源:互联网
导读:从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)邻位对换法
 
  实现全排列算法。

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读