fork download
  1. import java.util.*;
  2. class M{
  3. static Set p(Set l, String p, String s){
  4. int n = s.length(),
  5. i = 0;
  6. if(n > 1){
  7. for(; i < n; p(l, p + s.charAt(i), s.substring(0, i) + s.substring(++i, n)));
  8. } else if(!l.contains(p+=s)){
  9. l.add(p);
  10. }
  11. return l;
  12. }
  13.  
  14. public static void main(String[] a){
  15. // Added for test purposes only:
  16. a = new String[]{ "test" };
  17.  
  18. for(Object s : p(new TreeSet(), "", a[0])){
  19. System.out.println(s);
  20. }
  21. }
  22. }
Success #stdin #stdout 0.1s 320576KB
stdin
Standard input is empty
stdout
estt
etst
etts
sett
stet
stte
test
tets
tset
tste
ttes
ttse