全排列是一種時間複雜度為:O(n!)的演算法,前兩天給學生講課,無意間想到這個問題,回來總結了一下,可以由7種演算法求解,其中動態循環類似回溯演算法,實現起來比較繁瑣,故總結了6種,以颯讀者。所有演算法均使用JavaScript編寫,可直接運作。
演算法一:交換(遞歸)
Full Permutation( Recursive Swap)
Mengliao Software Studio - Bosun Network Co., Ltd.
2011.05.24
Fullull Permutation(Recursive Link)
Mengliao Software Studio - Bosun Network Co., Ltd.
2012.03.29
Full Permutation(Recursive Backtrack)
Mengliao Software Studio - Bosun Network Co., Ltd.
2012.03.29
Full Permutation(Non-recursive Sort)
Mengliao Software Studio - Bosun Network Co., Ltd.
2012.03.30