打印n个字符的所有组合

来源:互联网 发布:移动云计算专业课程 编辑:程序博客网 时间:2024/05/22 09:43
package Training;/** * Content:打印n个字符的所有组合 * @author tangzhenyu *  */public class Combination_Clear {static char[] arr;static int mask = 1;static <E> void combination(E[] a){int l = a.length;int n = (int) (Math.pow(2, l) - 1);for(int i = 1 ; i <= n ; ++i){int tmp = l;int num = i;do{if((i & mask) == 1){System.out.print(a[--tmp]); i >>>= 1;}else{--tmp;i >>>= 1;}}while(i != 0);i=num;System.out.println();}}public static void main(String[] args) {String[] a = {"a1","a2","a3","a4","a5","a6"};combination(a);}}

0 0
原创粉丝点击