Heim  >  Artikel  >  Backend-Entwicklung  >  Algorithmen in Python

Algorithmen in Python

silencement
silencementOriginal
2019-06-05 15:52:323332Durchsuche

Algorithmen in Python

Algorithmusdefinition

Ein Algorithmus (Algorithmus) bezieht sich auf eine genaue und vollständige Beschreibung einer Problemlösungslösung und ist eine Reihe von klare Anweisungen zur Lösung von Problemen. Algorithmen stellen einen systematischen Ansatz zur Beschreibung des strategischen Mechanismus zur Lösung von Problemen dar. Mit anderen Worten: Es ist möglich, für bestimmte standardisierte Inputs innerhalb einer begrenzten Zeit den erforderlichen Output zu erhalten. Wenn ein Algorithmus fehlerhaft oder für ein Problem ungeeignet ist, wird die Ausführung des Algorithmus das Problem nicht lösen. Verschiedene Algorithmen können unterschiedliche Zeit, Raum oder Effizienz nutzen, um dieselbe Aufgabe zu erledigen. Die Qualität eines Algorithmus kann an seiner räumlichen und zeitlichen Komplexität gemessen werden.

Ein Algorithmus sollte die folgenden sieben wichtigen Eigenschaften aufweisen:

①Endlichkeit: Die Endlichkeit eines Algorithmus bedeutet, dass der Algorithmus nach der Ausführung einer begrenzten Anzahl von Schritten terminieren kann; 🎜>②Bestimmtheit: Jeder Schritt des Algorithmus muss eine genaue Definition haben.

③Eingabe: Ein Algorithmus verfügt über 0 oder mehr Eingaben zur Beschreibung des Operanden. Die Ausgangssituation, die sogenannte 0-Eingabe, bezieht sich auf die festgelegten Anfangsbedingungen durch den Algorithmus selbst;

④Ausgabe: Ein Algorithmus verfügt über eine oder mehrere Ausgaben, um die Ergebnisse der Verarbeitung der Eingabedaten widerzuspiegeln. Ein Algorithmus ohne Ausgabe ist bedeutungslos.

⑤Effektivität: Jeder im Algorithmus ausgeführte Berechnungsschritt kann in grundlegende ausführbare Operationsschritte zerlegt werden, d. h. jeder Berechnungsschritt kann innerhalb einer begrenzten Zeit abgeschlossen werden (auch als Wirksamkeit bezeichnet). ;

⑥Hohe Effizienz: schnelle Ausführung und geringer Ressourcenverbrauch;

⑦Robustheit (Robustheit): Korrekte Reaktion auf Daten.

Zeitkomplexität


In der Informatik ist die Zeitkomplexität eines Algorithmus im Allgemeinen eine Funktion, die die Laufzeit und die Zeitkomplexität des Algorithmus quantitativ beschreibt Die verwendete Big-O-Notation (Big-O-Notation) ist eine mathematische Notation, die zur Beschreibung des asymptotischen Verhaltens einer Funktion verwendet wird. Genauer gesagt handelt es sich um eine Funktion, die eine andere (normalerweise einfachere) Funktion verwendet, um die asymptotische obere Größenordnung einer Funktion zu beschreiben. Gebunden. In der Mathematik wird es im Allgemeinen verwendet, um den Rest einer abgeschnittenen unendlichen Reihe, insbesondere einer asymptotischen Reihe, zu beschreiben. Mit dieser Methode kann die Komplexität von Algorithmen analysiert werden wird als asymptotisch bezeichnet und berücksichtigt die Situation, wenn sich die Größe des Eingabewerts der Unendlichkeit nähert.

Großes O, kurz gesagt kann man es sich als „Ordnung von“ (ungefähr) vorstellen.

Unendlich asymptotisch

Die Big-O-Notation ist sehr nützlich bei der Analyse der Effizienz eines Algorithmus. Beispielsweise kann die Zeit, die zum Lösen eines Problems der Größe n benötigt wird (oder die Anzahl der erforderlichen Schritte), ermittelt werden: T(n) = 4n^2 - 2n + 2.

Wenn n zunimmt, beginnt der Term n^2; In den meisten Fällen ist die Auswirkung des Weglassens auf den Wert des Ausdrucks vernachlässigbar.

Das obige ist der detaillierte Inhalt vonAlgorithmen in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn