递归调用--(数组1,2,3,列出所有可能的组合) 野性酷女 2022-11-07 04:24 86阅读 0赞 import java.util.Arrays; import java.util.LinkedList; import java.util.List; public class TestA { static boolean b;//默认值false /** * @Title: main * @Description: 1,2,3,列出所有可能的组合 * @param args void * @author: zs * @date: 2021-03-11 10:27 */ public static void main(String[] args) { System.out.println("static boolean b;//默认值false "+b); String []string=new String[] {"1","2","3"}; listAll(Arrays.asList(string), ""); } public static void listAll(List candidate,String prefix) { if(!prefix.isEmpty())System.out.println(prefix); for(int i=0;i<candidate.size();i++) { List tmpList=new LinkedList(candidate); listAll(tmpList, prefix+tmpList.remove(i));//tmpList.remove(i)返回的是被移除的那个元素. } } } 执行结果: static boolean b;//默认值false false 1 12 123 13 132 2 21 213 23 231 3 31 312 32 321
还没有评论,来说两句吧...