我想嘗試一個算法的,我可以在很短的我的推斷引擎實現在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