首页 > 代码库 > 数组组合

数组组合

理论:

將一組數字、字母或符號進行排列,以得到不同的組合順序,例如1 2 3這三個數的排列組合有:1 2 3、1 3 2、2 1 3、2 3 1、3 1 2、3 2 1。

 

java实现:

package 经典;import java.lang.reflect.Array;import java.util.Arrays;import java.util.LinkedList;import java.util.List;public class 数组组合1 {    public 数组组合1() {        // TODO 自动生成的构造函数存根    }        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);            listAll(temp,prefix+temp.remove(i));        }    }    /**     * @param args     */    public static void main(String[] args) {        // TODO 自动生成的方法存根                String[] array=new String[]{                "1","2","3","4","5"        };        listAll(Arrays.asList(array),"");            }}

 

数组组合