このコードでは、再帰の概念を理解しようとしていますが、要点が完全に抜け落ちています:sum(arr, n) = sum(arr, n - 1) arr[n - 1 ];
このコードがあります:
リーリー次の式を理解しようとしています:sum(arr, n - 1) arr[n - 1];
これは当てはまりますか:sum(arr, n - 1)
では、n が (index - 1) であるか (n - 1) であるかが、追加される配列項目の長さになります。また、これを実行した後、2 番目の式 arr[n - 1] はどうなるでしょうか。 [n- 1] は配列要素ですか? 配列なので「[]」があります。
愚かなことや迷惑なことがあれば申し訳ありませんが、誰かが私を正しい方向に導くのを手伝ってくれれば、非常に感謝します。
関数
sum(arr,n)
は、arr[0] ... arr[n-1]
を計算するものとして記述できます。これは
と同等ですarr[0] ... arr[n-2] arr[n-1]
これは
と同等ですsum(arr,n-1) arr[n-1]
このルールが適用されない唯一のケースは、
n<=0
の場合であり、この場合、合計は 0 になります。