2016-05-06 9 views
-1

与えられた長さkの文字列の順列を生成したい。以下はコードです。長さkの文字列の順列を見つける

public class PermString { 
    private static void swap(char[] a, int i, int j){ 
     char temp = a[i]; 
     a[i] = a[j]; 
     a[j] = temp; 
    } 
    private static void permute(char[] a, int n){ 
     if(n ==1){ 
      System.out.println(a); 
     } 
     for(int i=0; i<n ; i++){ 
      swap(a, i, n-1); 
      permute(a, n-1); 
      swap(a, i, n-1); 
     } 
    } 
    public static void main(String[] args) { 
     String str = "ABCCCD"; 
     char[] characters = str.toCharArray(); 
     permute(characters, characters.length); 
    } 
} 

それは正しく文字列の順列を生成し、私は固定サイズの長さの条件をコーディングする方法を知りたい、kは言います。

答えて

0

あなたはちょうどあなたが

combGen(文字[]、int型K)としてそれに名前を付けるとしましょう---サイズKのすべての組み合わせを計算し、別の機能を追加する必要が

とのために生成された各組み合わせ - 既存のコードを使用してすべての順列を計算します。

そして、彼らには解決策があります。組み合わせを生成する既存の実装が既にあります。これは、reference

関連する問題