落叶的悲哀: [code=java] /** * 适用树的方式全排列list * 例如 * 11 8 * 8 20 11 20 * 20 8 20 11 * @param permutation * @param temps * @param pathlist */ private static void nextPermutation(List<Integer> permutation, List<List<Integer>> temps, List<Integer> pathlist) { // 寻找非递增的最后一个元素 if(pathlist.size()==permutation.size()){ temps.add(new ArrayList<>(pathlist)); return; } for (int i = 0; i < permutation.size(); i++) { if(!pathlist.contains(permutation.get(i))) { pathlist.add(permutation.get(i)); nextPermutation(permutation,temps,pathlist); pathlist.remove(pathlist.size()-1); } } } [/code] 全排列实现,剩下的和博主的答案一致
2024年华为OD机试真题-矩阵扩散-C++-OD统一考试(E卷)
华为OD机试真题-田忌赛马-2024年OD统一考试(C卷D卷)