我想尝试一个算法的,我可以在很短的我的推断引擎实现在java中推理引擎实现
创建可能的二元组合号码,如果输入文件到我的项目有4个不同的变量,我的程序应该是能够生成
。 。 。组合....到目前为止,我对这个问题的处理方法如下,这只是一个想法,因为它现在是硬编码...基本上我需要算法来生成这个对于任何给定数量的变量“N”。
到目前为止我的代码...
public class TTAlgorithm {
public static void main(String[] args) {
Integer j = new Integer(10);
for (int i = 0; i < 4096; i++) {
if (j.toBinaryString(i).length() == 1) {
System.out.println("0000000000" + j.toBinaryString(i));
}
if (j.toBinaryString(i).length() == 2) {
System.out.println("000000000" + j.toBinaryString(i));
}
if (j.toBinaryString(i).length() == 3) {
System.out.println("00000000" + j.toBinaryString(i));
}
if (j.toBinaryString(i).length() == 4) {
System.out.println("0000000" + j.toBinaryString(i));
}
if (j.toBinaryString(i).length() == 5) {
System.out.println("000000" + j.toBinaryString(i));
}
if (j.toBinaryString(i).length() == 6) {
System.out.println("00000" + j.toBinaryString(i));
}
if (j.toBinaryString(i).length() == 7) {
System.out.println("0000" + j.toBinaryString(i));
}
if (j.toBinaryString(i).length() == 8) {
System.out.println("000" + j.toBinaryString(i));
}
if (j.toBinaryString(i).length() == 9) {
System.out.println("00" + j.toBinaryString(i));
}
if (j.toBinaryString(i).length() == 10) {
System.out.println("0" + j.toBinaryString(i));
}
if (j.toBinaryString(i).length() == 11) {
System.out.println("" + j.toBinaryString(i));
}
}
}
}
感谢您的帮助....
我可以得到upvote吗? ;) – gshauger 2011-05-14 18:46:23
我试了两次......但我不能,因为我有不到15的声望,但我肯定有一次我高于15 ......感谢拯救我的生命大声笑......快乐编码 – doNotCheckMyBlog 2011-05-14 19:08:31
+1请注意@ gshauger已经将代码的重复部分分解并放入循环中。他还使用静态方法'Integer.toBinaryString()'的类引用。 – trashgod 2011-05-15 06:29:29