把数组里的数组合全部列出 (递归法)

把数组里的数组合全部列出 ,比如1和2列出来为1, 2,,12,21

package MonthSep.HWday04;

import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
// 把数组里的数组合全部列出  递归法
public class HW01 {
    public static void main(String[] args) {
        String[] array = new String[]{"1", "2", "3", "4"};
        listAll(Arrays.asList(array), "");
    }
    public static void listAll(List candidate, String prefix){
        if(candidate.isEmpty()){
            System.out.println(prefix);
        }
        for(int i = 0; i < candidate.size(); i++){
            List temp = new LinkedList(candidate);
            Object remove = temp.remove(i);
            listAll(temp, prefix + remove);
        }
    }
}

猜你喜欢

转载自blog.csdn.net/u014651560/article/details/82834488