我有以下代码
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 :(得分:6)
例如,“101”的图表看起来像这样:
unknown(101)
-> 1 + 2 * unknown(10)
-> 1 + 2 * (0 + 2 * unknown(1))
-> 1 + 2 * (0 + 2 * 1)
-> 1 + 2 * 2
-> 5
答案 1 :(得分:3)
他希望您绘制一个树,其中每个节点都是对该函数的调用,并指向它所做的子调用。