Es fiel mir schwer, die Wiederholung zu verstehen, und ich dachte, ich würde sie für mich selbst zusammenstellen. Wir können in Zukunft weitere hinzufügen. Die Sprache ist Python3.
sum.py
def sum(n):
if n <= 1:
return n
return n + sum(n-1)
print(sum(100)) # 5050
sum.py
def sum(n):
res = 0
if n >= 1:
res = n + sum(n-1)
return res
print(sum(100)) # 5050
factorical.py
def fractorial(n):
if n <= 1:
return n
return n * fractorial(n-1)
print(fractorial(5)) # 120
factorical.py
def factorial(n):
res = 1
if n >= 1:
res = n * factorial(n-1)
return res
print(factorial(5)) # 120
def double_list(lst):
if lst == []:
return []
first = lst[0]
rest = lst[1:]
return [first*2] + double_list(rest)
print(double_list([1,2,3])) # [2, 4, 6]
Eine leicht verständliche Erklärung ist hier
euclidean.py
def gcd(m, n):
r = m % n
if r == 0:
return n
return gcd(n, r)
print(gcd(1071, 1029)) # 21
Das einfachste Beispiel zum Verständnis rekursiver Funktionen [Rückwirkende Funktion in Python verstanden] (https://qiita.com/dhirabayashi/items/2f079e62fa2e286f1766) [Rekursive Funktionen in Python verstehen] (https://note.com/shimakaze_soft/n/nf17633fe257c) Die Idee, eine Schleife zu einer rekursiven Funktion zu machen
Eine Wiederholung ist schwer vorstellbar und ich kämpfe immer noch ... Der Code sieht einfach aus, aber es braucht Zeit, um herauszufinden, wie er funktioniert. Dieser Punkt für die Aussage ist leicht zu verstehen, nicht wahr?
Recommended Posts