2010-12-12 54 views
0

我有以下代碼爪哇 - 圖表遞歸調用

public static int unknown(String x) 
{ 
if ((x.length()==1) && (x.equals("1"))) 
    return 1; 
else if ((x.length()==1) && (x.equals("0"))) 
     return 0; 
else if (x.charAt(x.length()-1)=='1') 
    return 1+ 2*unknown(x.substring(0,x.length()-1)); 
else 
    return 0+2*unknown(x.substring(0,x.length()-1)); 
} 

我的教授說我一定關係圖的遞歸調用。他在談論什麼樣的圖表?我應該如何顯示它?謝謝。

P.S.正被呼籲的字符串爲「101011」,或43

-Dan

+0

感謝幫助鄉親 – 2010-12-12 02:00:30

+3

告訴你的教授基本情況的長度檢查是不必要的。 – 2010-12-12 02:04:12

+0

仍在尋求指導 – 2010-12-12 03:14:14

回答

6

例如,對於「101」的示意圖會是這個樣子:

unknown(101) 
-> 1 + 2 * unknown(10) 
    -> 1 + 2 * (0 + 2 * unknown(1)) 
    -> 1 + 2 * (0 + 2 * 1) 
    -> 1 + 2 * 2 
-> 5 
+0

仍然需要101011 – 2010-12-12 02:59:30

+0

的幫助未知(「101011」)將在此答案中使用與Victor爲未知(「101」)做同樣的方法進行圖解。 – irrelephant 2010-12-12 10:04:30

3

他要你畫一棵樹,其中每個節點是對函數的調用,並指向孩子叫,它讓。