[アルゴリズム]-再帰関数
1.再帰関数
📘 再帰とは、何かを定義するときに自分を参照することです.[ウィキペディア]
あるコンピュータ工学部の学生が有名な教授に聞いた.
「在貴ってどういう意味?」
「いいか.昔、ある山の頂上に、世の中のすべてのことをよく知っている仙人がいた.村の人たちは、その仙人にいろいろな質問をして、知恵を持って答えた.彼の答えの大部分は正しい」
しかしある日、一人の書生がその仙人に尋ねてきた.
「在貴ってどういう意味?」
「いいか.昔、ある山の頂上で、世界中の知識が......
2.コード実装
ディジット
60から0までのカウント機能を再帰関数で簡単に実現しましょう.
def count_down(number):
if number < 0: # 만약 숫자가 0보다 작다면, 빠져나가자!
return
print(number) # number를 출력하고
count_down(number - 1) # count_down 함수를 number - 1 인자를 주고 다시 호출한다!
count_down(60)
事実の
再帰関数に関連する代表的な問題ファクトリ問題をコードで実現する.
3! 銀3 2 1=6、
4! 4 3 2 1=4 3です!=24
def factorial(n):
if n == 1:
return 1
return n * factorial(n - 1)
print(factorial(60))
けんさ
回文の意味はまっすぐで、逆さまですが、同じ単語や文です.
input = "abcba"
def is_palindrome(string):
if len(string) <= 1:
return True
if string[0] != string[-1]:
return False
return is_palindrome(string[1:-1])
print(is_palindrome(input))
Reference
この問題について([アルゴリズム]-再帰関数), 我々は、より多くの情報をここで見つけました https://velog.io/@heesungj7/TIL알고리즘-재귀함수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol