gpt4 book ai didi

java - 递归方法构造

转载 作者:行者123 更新时间:2023-12-01 19:21:18 27 4
gpt4 key购买 nike

这是我的问题:

Write a recursive method called binaryToDecimal. The method should convert a binary string of bits to a base 10 integer. A sample call for an object from our RecursionExamples class would be

answer = example.binaryToDecimal("101111")

The integer returned would be 47.

我需要帮助来解决这个问题。我知道这将是一个 if-else 循环,但如何进行它让我感到困惑。 (这是eclipse环境)。

最佳答案

如果你想递归地解决它,考虑一下对于一个二进制字符串,你可以通过根据最右边的数字添加 1 或 0 将其转换为整数,并根据字符串的其余部分添加 2 倍此函数。

它在伪代码中看起来像这样

// input is an integer of 1's and 0's
def f( int binaryString ):
int lastDigit = binaryString % 10 // Get the last digit
int restOfString = binaryString / 10 // Remove the last digit

return lastDigit + (2 * f(restOfString)) // add the last digit to twice f
// applied to the rest of the string

您还必须检查字符串的其余部分何时减少为结束条件,但这是该方法的基本逻辑。

关于java - 递归方法构造,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4120421/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com