import java.util.ArrayList; public class Test45 { //打印一个字符串的全排列 public static ArrayList<String> permutation (String str) { ArrayList<String> res = new ArrayList<>(); if (str == null || str.length() == 0) { return res; } char[] chs = str.toCharArray(); process1(chs, 0, res); return res; } public static void process1 (char[] str , int i , ArrayList<String> res ) { if (i == str.length) { res.add(String.valueOf(str)); } for (int j = i; j < str.length; j++) { swap(str , i , j); process1(str , i + 1 , res); swap(str , i , j); } } public static void swap (char[] chs , int i , int j) { char temp = chs [i]; chs[i] = chs [j]; chs[j] = temp; } }
打印一个字符串全排列
最新推荐文章于 2024-10-16 10:13:45 发布