Write a Java Program to Compute all the permutations of the string

Java Program to Compute all the permutations of the string

Welcome to the World of Online Learning:

Hello Friends “This blog helps you to learn Java programming concepts. You can learn Java  language at your own speed and time. One can learn concepts of Java language by practicing various programs given on various pages of this blog. Enjoy the power of Self-learning using the Internet.”

Java Program to Compute all the permutations of the string
Java Program to Compute all the permutations of the string

Write a Java Program to Compute all the permutations of the string

PROGRAM: Java Program to Compute all the permutations of the string

/*Java Program to Compute all the permutations of the string*/

import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;

class Main {
public static Set<String> getPermutation(String str) {

// create a set to avoid duplicate permutation
Set<String> permutations = new HashSet<String>();

// check if string is null
if (str == null) {
return null;
} else if (str.length() == 0) {
// terminating condition for recursion
permutations.add(“”);
return permutations;
}

// get the first character
char first = str.charAt(0);

// get the remaining substring
String sub = str.substring(1);

// make recursive call to getPermutation()
Set<String> words = getPermutation(sub);

// access each element from words
for (String strNew : words) {
for (int i = 0;i<=strNew.length();i++){

// insert the permutation to the set
permutations.add(strNew.substring(0, i) + first + strNew.substring(i));
}
}
return permutations;
}

public static void main(String[] args) {

// create an object of scanner class
Scanner input = new Scanner(System.in);

// take input from users
System.out.print(“Enter the string: “);
String data = input.nextLine();
System.out.println(“Permutations of ” + data + “: \n” + getPermutation(data));
}
}

Leave a Reply

Your email address will not be published. Required fields are marked *