一个有趣的Java问题

来源:百度知道 编辑:UC知道 时间:2024/05/11 16:02:24
给定一个数字n(n>0),求这个数的最大子集。

如n=1, 输出 1
如n=2, 输出 1, 2, 12
如n=3,输出1,2,3,12,13,23,123

注意,子集中的不包括重复项,如n=2时,11,22均无效。

public class MySubset {
public static void main(String[] args) {
System.out.print("请输入一个数(1-9):");
int n = new java.util.Scanner(System.in).nextInt();
int count = 1 << n;
for(int i = 1; i < count; i++){
String binStr = Integer.toBinaryString(i);
for(int j = 0, len = binStr.length(); j < len; j++){
if(binStr.charAt(len - j -1) == '1')System.out.print((char)('1' + j));
}
System.out.println();
}
}
}

fn(n){
system.out.print("n");
system.out.print(fn(n-1));
system.out.print(fn(n-1)+"n");
return new Array(){n,f(n-1),f(n-1)+"n"};//fn(x)返回一数组,数组+"x"=数组每个元素末尾append一个"x"
}

public class J {

public static void main(String[] args) {
int num=5;//任意一个正整数数字
for(int i=1;i<=num;i++){
int[] array=new int[i];
method(1,num,i,array);
}
}

publi