Generate All Permutations of String
This program generates all permutations of a string.
Problem Statement
Write a Java program to generate all permutations of "ABC".
Source Code
| 1 | public class StringPermutations { |
| 2 | public static void permute(String str, String ans){ |
| 3 | if(str.length()==0){ |
| 4 | System.out.println(ans); |
| 5 | return; |
| 6 | } |
| 7 | for(int i=0;i<str.length();i++){ |
| 8 | char ch=str.charAt(i); |
| 9 | String ros=str.substring(0,i)+str.substring(i+1); |
| 10 | permute(ros,ans+ch); |
| 11 | } |
| 12 | } |
| 13 | public static void main(String[] args) { |
| 14 | System.out.println("Eduinq String Permutations"); |
| 15 | permute("ABC",""); |
| 16 | } |
| 17 | } |
Program Output
Eduinq String Permutations ABC ACB BAC BCA CAB CBA
Explanation
The recursive function chooses each character in turn to add to the answer so far, then recursively permutes the remaining string, together generating and printing every possible permutation.