有四種常見的全置換算法:
詞典訂購
增量十進制方法
遞減小數法
鄰位取代法
本文的重點是字典排序。
給定字符集中的字符定義了序列關系。在此基礎上,定義了兩個完全排列的字符的順序是從左到右逐壹比較相應的字符。
【示例】字符集{1,2,3},首先是較小的數字,因此按字典順序生成的完整排列為:123,132,213,231,312,326552。
【註意】全排列可以看作壹個字符串,字符串可以有前綴和後綴。
1)生成給定全排列的下壹個排列。所謂的下壹個排列是指這壹個和下壹個之間沒有任何東西。這要求這壹個和下壹個具有盡可能長的前綴,也就是說,更改僅限於最短的後綴。
【例】839647521是1-9的排列。在1-9的排列中,第壹個是123456789,最後壹個是987654321。如果從右向左掃描增加,將達到987654321,將沒有下壹個。否則,找到第壹次下落的位置。