package 面试;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
//所有数字进行全排列,并按大小进行排序
public class Main1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.next();
List<String> list;
list = Permutation(str);
System.out.println(list);
}
public static ArrayList<String> Permutation(String str){
ArrayList<String> list = new ArrayList<>();
if(str == null || str.length() <= 0) return list;
permutate(str.toCharArray(),0,list);
Collections.sort(list);
return list;
}
private static void permutate(char[] str, int begin, ArrayList<String> list) {
if(begin == str.length-1){
String s = String.valueOf(str);
if(!list.contains(s)) {
list.add(s);
}
return;
}
for(int i = begin; i < str.length; i++){
swap(str,begin,i);
permutate(str,begin+1,list);
swap(str,begin,i);
}
}
public static void swap(char[] str, int a, int b){
char tmp = str[a];
str[a] = str[b];
str[b] = tmp;
}
}