これが非常に基本的な質問である場合は申し訳ありませんが、私は再帰を学習しようとしています。
以下のコードは、リンクリストを逆にすることができます。
(n.next=prev)
3行目までのロジックは理解していますが、この行を実行する前に関数が再度呼び出されるため、4行目がいつ呼び出されるか混乱しています。
誰かがこの再帰の流れを教えてもらえますか?
void reverse(node n, node prev) {
if (n == null) { newroot = prev; return; }
reverse(n.next, n);
n.next = prev;
}