Ein Memo, dass ich eine Grundfunktion in Python mit Wiederholung geschrieben habe

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.

Was ist eine rekursive Funktion?

Rekursive Funktion zum Ermitteln der Summe von 1 bis n

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

Rekursive Funktion zum Ermitteln der Potenz von n

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

Rekursive Funktion zum Suchen einer Liste, die jedes Element der Liste verdoppelt

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

Euklidische Methode der gegenseitigen Teilung

euclidean.py


def gcd(m, n):
    r = m % n
    if r == 0:
        return n
    return gcd(n, r)

print(gcd(1071, 1029))   # 21

Referenz

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

Impressionen

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

Ein Memo, dass ich eine Grundfunktion in Python mit Wiederholung geschrieben habe
Zeichnen Sie in Python ein Diagramm einer quadratischen Funktion
Holen Sie sich den Aufrufer einer Funktion in Python
Ein Memo, das ich in Python zusammengeführt habe
Erstellen Sie eine Funktion in Python
Ssh-Verbindungsnotiz mit ProxyCommand von ssh_config in Python
Ein Hinweis beim Erstellen eines gerichteten Diagramms mit Graphviz in Python
So entwickeln Sie in einer virtuellen Python-Umgebung [Memo]
So geben Sie char * in einer Rückruffunktion mit ctypes in Python zurück
Versuchen Sie, eine in Python geschriebene Funktion mit Fn Project auszuführen
Beim Schreiben eines Programms in Python
[Python] Ein Memo häufig verwendeter Phrasen in Python-Skripten
Eine Funktion, die die Verarbeitungszeit einer Methode in Python misst
Übung, dies in Python zu verwenden (schlecht)
Vorsichtsmaßnahmen beim Beizen einer Funktion in Python
Zeigen Sie eine Liste der Alphabete in Python 3 an
Scraping von Websites mit JavaScript in Python
Zeichnen Sie mit graphviz eine Baumstruktur in Python 3
Python-Grundschrift
Effektives Python-Memo Element 4 Schreiben Sie eine Hilfsfunktion anstelle eines komplizierten Ausdrucks
[Python] [Word] [python-docx] Versuchen Sie, mit python-docx eine Vorlage für einen Wortsatz in Python zu erstellen
Ein Memo, das ein Tutorial zum Ausführen von Python auf Heroku erstellt hat
Erstellen Sie eine GIF-Datei mit Pillow in Python
Ein Memo, das ich schnell in Python geschrieben habe
Kopieren Sie die Liste in Python
Anzeigen von Arzneimittelbewertungen mithilfe von Listen in Python
Machen Sie mit Python eine Joyplot-ähnliche Handlung von R.
Ausgabe in Form eines Python-Arrays
Lassen Sie uns einen Teil des maschinellen Lernens mit Python berühren
Erstellen Sie eine MIDI-Datei in Python mit pretty_midi
Aufgezeichnete Umgebung für die Datenanalyse mit Python
Grundlegende Geschichte der Vererbung in Python (für Anfänger)
Zusammenfassung der Excel-Operationen mit OpenPyXL in Python
[Circuit x Python] So ermitteln Sie die Übertragungsfunktion eines Schaltkreises mit Lcapy
Führen Sie in Python eine "Diagonalisierung der symmetrischen Matrix A mit der orthogonalen Matrix U" durch (Eigenwertzerlegung).
Grundlegende Datenrahmenoperationen, die von Anfängern in einer Woche Python-Lernen geschrieben wurden
Extrahieren Sie Elemente (mithilfe einer Liste von Indizes) wie NumPy aus einer Python-Liste / einem Python
Grundlegende Sortierung in Python
Python-Grundnotiz - Teil 2
Grundlegende Python-Befehlsnotizen
Grundkenntnisse in Python
Python grundlegende Grammatik Memo
Python-Grundnotiz - Teil 1
[Python] Implementierung von Clustering mit einem gemischten Gaußschen Modell
Erstellen Sie mit Selenium einen Datenerfassungsbot in Python
Memo mit Python mit HiveServer2 von EMR verbunden
Grundlagen des Eingabe- / Ausgabebildschirms mit tkinter in python3
Schneiden Sie einen Teil der Zeichenfolge mit einem Python-Slice aus
Eine Code-Sammlung, die häufig in persönlichem Python verwendet wird
Ein Memorandum beim Schreiben von experimentellem Code ~ Anmelden in Python
Der Schmerz von gRPC mit Python. November 2019. (Persönliches Memo)
Gruppieren Sie nach aufeinanderfolgenden Elementen einer Liste in Python
Lösen Sie einen Strich (Backtrack ohne Rekursion in Python)
Zeigen Sie ein Histogramm der Bildhelligkeitswerte in Python an
kanonischer Python-Ausdruck oder Match-Objekt-Memo
So führen Sie einen Befehl mit einem Unterprozess in Python aus
Ein Memorandum über die Umsetzung von Empfehlungen in Python
Ich habe versucht, Python (3) anstelle eines Funktionsrechners zu verwenden