經常會遇到字串全排列的問題。例如:輸入為,則其全排列組合為abc,acb,bac,bca,cba,cab。對於輸入長度為n的字串陣列,全排列組合為n!種。
思路:從字串陣列中每次選取乙個元素,作為結果中的第乙個元素。然後,對剩餘的元素全排列,步驟跟上面一樣。很明顯這是個遞迴處理的過程,一直到最後即可。
按照慣例,talk is cheap,show me the code:
package leilei.bit.edu.tree;
public class recursiontree else
} }public static void swap(char s,int i,int j)
public static void main(string args) ;
permutation(s, 0, 2);
}}
**執行結果
abc
acbbac
bcacba
cab
字串全排列 java實現
經常會遇到字串全排列的問題。例如 輸入為,則其全排列組合為abc,acb,bac,bca,cba,cab。對於輸入長度為n的字串陣列,全排列組合為n 種。思路 從字串陣列中每次選取乙個元素,作為結果中的第乙個元素。然後,對剩餘的元素全排列,步驟跟上面一樣。很明顯這是個遞迴處理的過程,一直到最後即可。...
Java遞迴實現字串全排列
public class allstrings system.out.println chs的全排列如下 as.getallstrings chs,0 public void getallstrings char chs,int from 基本思想 遞迴 遞迴流程 要從下標from開始,輸出從fro...
Java實現字串的全排列總結
在劍指offer上刷題時遇到的題目 輸入乙個字串,按字典序列印出該字串中字元的所有排列。例如輸入字串abc,則列印出由字元a,b,c所能排列出來的所有字串abc,acb,bac,bca,cab和cba 輸入乙個字串,長度不超過9 可能有字元重複 字元只包括大小寫字母。本部落格參考 1.2.本題目用到...