[python]再帰アルゴリズム
665 ワード
def solution(x):
if x == 1 or x==0:
return x
else:
return solution(x-1)+solution(x-2)
再帰アルゴリズム:与えられた問題において,同類のより容易な問題の答えでその問題を解くことができれば,同じアルゴリズムを繰り返し適用することで解くことができる.def solution(x):
fn_1 = 1 ##f1
fn_2 = 0 ##f0
fn = x
while x>=2:
fn = fn_1 + fn_2
fn_2 = fn_1
fn_1 = fn
x -= 1
return fn
複文と複文の複雑さはいずれもO(n)であるが,複文は効率的であることが多い.(通常、ゲートプールの方が時間効率が高い)->組み合わせの数
->ハノイタワー
->フィボナッチソート
これらの問題は再帰アルゴリズムで解決することもできる:直観的で、アルゴリズムが簡単で、説明しやすい利点
Reference
この問題について([python]再帰アルゴリズム), 我々は、より多くの情報をここで見つけました https://velog.io/@rkdud007/Python-재귀-알고리즘-1テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol