1
我有一个理解递归代码的问题,我试图画出树跟随,但有些东西对我来说还不清楚。 有人可以帮助我理解代码片段,并在页面上绘制,或绘制或任何其他软件,递归树,以便我可以完全理解代码。Java - SubSet和递归递归递归图
为什么会有两个递归? 我不明白第二次递归如何工作(在||之后)。
public static boolean hasSum(int[] array, int start, int sum) {
if (sum == 0)
return true;
if (start > array.length - 1)
return false;
return hasSum(array, start + 1, sum - array[start])
|| hasSum(array, start + 1, sum);
}
非常感谢您的帮助
谢谢你可以给我画吗? – liran
@liran你是什么意思“画我”? – Eran
在声明中,我附上了一张图片,图片画出了所有递归调用。 如果你能把我引到页面,我会很高兴,因为我只按照正确的顺序绘制这些步骤。 我相对开始于java 而我仍然需要了解代码 谢谢 – liran