Heim > häufiges Problem > Die zeitliche Komplexität des Algorithmus beträgt

Die zeitliche Komplexität des Algorithmus beträgt

(*-*)浩
Freigeben: 2019-07-23 11:20:13
Original
55435 Leute haben es durchsucht

Die zeitliche Komplexität eines Algorithmus bezieht sich auf die Anzahl der Grundoperationen, die während der Ausführung des Algorithmus erforderlich sind.

Die zeitliche Komplexität des Algorithmus beträgt

Ein Algorithmus ist eine Reihe wohldefinierter Regeln, die verwendet werden, um ein Problem in einer begrenzten Anzahl von Schritten zu lösen. (Empfohlenes Lernen: MySQL-Video-Tutorial)

Laienhaft ausgedrückt ist es der Prozess der Computerproblemlösung. Die Komplexität eines Algorithmus ist ein Maß für die Effizienz des Algorithmus, die Menge an Computerressourcen, die zum Ausführen des Algorithmus erforderlich sind, und eine wichtige Grundlage für die Bewertung der Qualität des Algorithmus. Wir können die Qualität eines Algorithmus anhand seiner zeitlichen und räumlichen Komplexität bewerten.

Wenn ein Algorithmus in ein Programm umgewandelt und auf einem Computer ausgeführt wird, hängt die zur Ausführung benötigte Zeit von folgenden Faktoren ab:

(1) Die Geschwindigkeit der Hardware.

(2) Sprache zum Schreiben von Programmen. Je höher die Ebene der Implementierungssprache ist, desto weniger effizient ist ihre Ausführung.

(3) Die Qualität des vom Compiler generierten Objektcodes. Compiler mit besserer Codeoptimierung erzeugen Programme mit höherer Qualität.

(4) Ausmaß des Problems. Beispielsweise muss die Ausführungszeit für die Suche nach Primzahlen innerhalb von 100 und die Suche nach Primzahlen innerhalb von 1000 unterschiedlich sein.

Natürlich ist es schwierig, die Ausführungszeit von Algorithmen zu vergleichen, wenn verschiedene Faktoren unsicher sind. Das heißt, es ist unangemessen, die Effizienz eines Algorithmus anhand der absoluten Zeit zu messen, die für seine Ausführung benötigt wird. Daher kann die Zeitkomplexität nicht durch die Ausführungszeit oder Programmlänge des Algorithmusprogramms bestimmt werden, sondern sollte anhand der Anzahl der Grundoperationen gemessen werden, die während der Ausführung des Algorithmus erforderlich sind. Zeithäufigkeit Die Zeit, die ein Algorithmus benötigt, ist proportional zur Anzahl der Ausführungen von Anweisungen im Algorithmus. Je nachdem, welcher Algorithmus mehr Anweisungen hat, wird mehr Zeit benötigt. Die Anzahl der Ausführungen von Anweisungen in einem Algorithmus wird als Zeithäufigkeit bezeichnet. Bezeichnen Sie es als T(n).

Zeitkomplexität

In der gerade erwähnten Zeitfrequenz wird n als Maßstab des Problems bezeichnet. Wenn sich n ständig ändert, ändert sich auch die Zeitfrequenz T(n). Aber manchmal möchten wir wissen, welches Muster es zeigt, wenn es sich ändert. Zu diesem Zweck führen wir das Konzept der Zeitkomplexität ein. Im Allgemeinen ist die Häufigkeit, mit der die Grundoperationen im Algorithmus wiederholt werden, eine Funktion der Problemgröße n, dargestellt durch T(n), wenn es eine Hilfsfunktion f(n) gibt Im Unendlichen ist der Grenzwert von T(n)/f(n) eine Konstante ungleich Null, dann heißt f(n) eine Funktion in der gleichen Größenordnung wie T(n). Mit der Bezeichnung T(n)=O(f(n)) wird O(f(n)) als asymptotische Zeitkomplexität des Algorithmus oder kurz Zeitkomplexität bezeichnet.

Weitere technische Artikel zum Thema MySQL finden Sie in der Spalte

MySQL-Tutorial

.

Das obige ist der detaillierte Inhalt vonDie zeitliche Komplexität des Algorithmus beträgt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage