2016-11-21 10 views
-3

問題文 再帰メソッドを使用してリストの要素の合計を計算します。 たとえば、値{1,2,3,4,5}のリストが提供されています再帰を使用してリスト内の要素の合計

要素の合計は、再帰を使用して以下の方法で計算する必要があります。

  1. {1,2,3,4,5}
  2. {3,4,5,6}
  3. {7,8,9}
  4. {15,16}
  5. {31}

ありがとうございます。

+0

サンプル入力? – Nurjan

+0

何を試しましたか? –

+0

はい1から5はリスト内の要素です。再帰で解決する方法はありませんでした。私は単純なループを使用しようとしましたが、取得は再帰を使用しています。 –

答えて

1
def mySum(arr): 
    if len(arr) == 1: 
     return arr[0] 
    elif len(arr) == 0: 
     return 0 
    return (arr[-1] + mySum(arr[:-1])) 

編集1:次のようにコメント

再帰で指摘したようにより多くの情報を追加すると定義することができる。

  • ベースケース
    • 長さがゼロである場合、
    • 長さが1の場合、要素を返します
    • から5までのリストは何ですか?
  • そうでなければ、私たちは、再帰的にすべての要素に合計を呼び出すが、(質問で述べたような構造を得るために)最後
+0

このコードスニペットは質問を解決するかもしれませんが、[説明を含む](// meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)本当にあなたの投稿の質を向上させるのに役立ちます。将来読者の質問に答えていることを覚えておいてください。そうした人々はあなたのコード提案の理由を知らないかもしれません。あなたのコードに説明的なコメントを詰め込まないようにしてください。これは、コードと説明の両方の可読性を低下させます! – kayess

+1

@kayessは意味があり、情報を追加する – Aditya

関連する問題