pascal 全排列顺序是什么?

来源:百度知道 编辑:UC知道 时间:2024/06/05 04:03:08
好像有顺序的说

因为有一道题求第m个 全排列。。。。
数字之间 交换的规律是什么呢?
这个我没太明白。。。。。。

举个例子吧。
如:找12543的下一个排列:
从最末位(3)开始向前(左)找,找到第一个比末位数字小的数字(2),把末位数字(3)提到第一个比末位数字小的数字(2)前面,(形成13254),再将原末位数字右边的数字从小到大排列(将“254”排序,整体改为“13245”)。

这样子执行m次就可以了,复杂度很小

一般是指数字从小到大。
如1234的全排列:
1 .1234
2 .1243
3 .1324
4 .1342
5 .1423
6 .1432
7 .2134
8 .2143
9 .2314
10.2341
11.2413
12.2431
13.3124
14.3142
15.3214
16.3241
17.3412
18.3421
19.4123
20.4132
21.4213
22.4231
23.4312
24.4321
总共24种

1 .1234
2 .1243
3 .1324
4 .1342
5 .1423
6 .1432
7 .2134
8 .2143
9 .2314
10.2341
11.2413
12.2431
13.3124
14.3142
15.3214
16.3241
17.3412
18.3421
19.4123
20.4132
21.4213
22.4231
23.4312
24.4321
这太简单了