全排列的学习

 全排列,在数学中算是比较简单的了

如果要是人生成全排列的话,就比较有规律了

如果要是用计算机生成,似乎有些困难

看了一下

利用减一法

其实

我觉得好像递归哟

利用计算机生成也是比较简单的

但是这种简单不被我们所接受

因为没有类似方面的长期环境的熏陶

就像手指和肌肉一样

稍加锻炼

就可以了~

关于排列算法

1.

按照字典排序的方法:

只对于n较小的排列高效

在一串排列中

从右向左

找到第一个下从小到大排列的数字

然后在尾部的串中找到最小的比他大的数字

将那个数字占据这个最小的数字的位置

剩下的数字从小到大排列

原理是:

2.Johnson Trotter 算法

定义:指向相邻的比自己小的较小数字的方向为可移动方向

算法:

首先规定123的方向均是向右

然后找到最大的可移动的数字

将他与指向的相邻数字交换

把所有比他的数字的方向改变

 

很奇怪的是这些算法几乎都是从后往前推导的

这和减一法有必然的联系吗

和人类的固有思维有点冲突我想

是这样的

是那个思维的逆过程

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值