全排列,在数学中算是比较简单的了
如果要是人生成全排列的话,就比较有规律了
如果要是用计算机生成,似乎有些困难
看了一下
利用减一法
其实
我觉得好像递归哟
利用计算机生成也是比较简单的
但是这种简单不被我们所接受
因为没有类似方面的长期环境的熏陶
就像手指和肌肉一样
稍加锻炼
就可以了~
关于排列算法
1.
按照字典排序的方法:
只对于n较小的排列高效
在一串排列中
从右向左
找到第一个下从小到大排列的数字
然后在尾部的串中找到最小的比他大的数字
将那个数字占据这个最小的数字的位置
剩下的数字从小到大排列
原理是:
2.Johnson Trotter 算法
定义:指向相邻的比自己小的较小数字的方向为可移动方向
算法:
首先规定123的方向均是向右
然后找到最大的可移动的数字
将他与指向的相邻数字交换
把所有比他的数字的方向改变
很奇怪的是这些算法几乎都是从后往前推导的
这和减一法有必然的联系吗
和人类的固有思维有点冲突我想
哦
是这样的
是那个思维的逆过程