gpt4 book ai didi

java - 该算法的基本情况是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:02:36 27 4
gpt4 key购买 nike

我正在学习递归并理解其中的大部分内容,但这个具体的问题让我感到困惑,它相当基础,但我不明白哪个陈述是基本情况,我认为这是打印行,但显然可能是错误的。我知道最终结果是什么,但似乎无法理解它是如何一步步完成的。

代码:

private static final String DIGIT_TABLE = "0123456789abcdef";


public static void printIt(long n, int base) {

if(n>=base)
printIt(n / base, base);
System.out.print(DIGIT_TABLE.charAt((int) n % base));

}

最佳答案

基本情况是 n<base ,或者当剩余数字可以表示为基数 base 中的单个数字时.

如果基数为 16,程序将如何执行的示例如下:

n_1: 0x1a5
n_2: 0x1a
n_3: 0x1
****
print n_3 % 16 -> 1
print n_2 % 16 -> a
print n_1 % 16 -> 5

在标记为 **** 的点,条件的计算结果为假,因此它不会进入无限递归。

关于java - 该算法的基本情况是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32032592/

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