【发布时间】:2016-06-27 09:30:42
【问题描述】:
我已经完成了很多工作,但我不知道在我的递归方法的论证中要添加什么。我不知道在 num1 = (Math.pow(base,(binToDecimal(s.length()-1)))); 中放入什么。 s.length()-1 不起作用,因为它不是字符串,但我不知道在这里放什么。我的递归方法是否也适用于我的基本情况?我的想法是,每次它都会将字符串的长度减一,并且会在字符串的长度为零时停止,但我认为它不起作用。你也可以使用 Math.pow 来做到这一点吗?我在网上看到了其他一些解决方案,但没有一个使用 Math.pow
public static int binToDecimal(String s)
{
//base case
if(s.equals("1"))
return 1;
if(s.equals("0"))
return 0;
int num1 = 0;
int finalAnswer = 0;
int base = 2.0;
//recursive case
if(s.length() > 1)
num1 = (Math.pow(base,(binToDecimal(s.length()-1))));
finalAnswer = num1 + finalAnswer;
return
finalAnswer;
}
【问题讨论】:
标签: java recursion binary converter