Zuhause Persönliche Finanzen Umgang mit Algorithm Complexity - Dummies

Umgang mit Algorithm Complexity - Dummies

Video: Dealing with Difficult Developers 2024

Video: Dealing with Difficult Developers 2024
Anonim

Teil der Algorithmen für Dummies Cheat Sheet

Sie wissen bereits, dass Algorithmen komplex sind. Sie müssen jedoch wissen, wie komplex ein Algorithmus ist, denn je komplexer der Algorithmus ist, desto länger dauert die Ausführung. Die folgende Tabelle hilft Ihnen, die verschiedenen Komplexitätsebenen in der Reihenfolge der Laufzeit (von schnell bis langsam) zu verstehen.

Komplexität Beschreibung
Konstante Komplexität O (1) Liefert eine unveränderliche Ausführungszeit, unabhängig davon, wie viel Eingabe Sie eingeben. Jede Eingabe erfordert eine einzige Ausführungszeit.
Logarithmische Komplexität O (log n) Die Anzahl der Operationen wächst langsamer als die Eingabe, wodurch der Algorithmus bei kleinen Eingaben weniger effizient und bei größeren effizienter wird. Ein typischer Algorithmus dieser Klasse ist die binäre Suche.
Lineare Komplexität O (n) Operationen wachsen mit der Eingabe in einem 1: 1-Verhältnis. Ein typischer Algorithmus ist die Iteration, wenn Sie die Eingabe einmal scannen und eine Operation auf jedes Element anwenden.
Linearithmische Komplexität O (n log n) Komplexität ist eine Mischung aus logarithmischer und linearer Komplexität. Es ist typisch für einige intelligente Algorithmen, die zur Bestellung von Daten verwendet werden, wie zum Beispiel Mergesortsort, Heapsort und Quicksort.
Quadratische Komplexität O (n 2 ) Die Operationen wachsen als Quadrat der Anzahl der Eingänge. Wenn Sie eine Iteration in einer anderen Iteration haben (in der Informatik als verschachtelte Iterationen bezeichnet), haben Sie eine quadratische Komplexität. Zum Beispiel haben Sie eine Liste von Namen und, um die ähnlichsten zu finden, vergleichen Sie jeden Namen mit allen anderen Namen. Einige weniger effiziente Ordnungsalgorithmen weisen eine solche Komplexität auf: Blasensortierung, Auswahlsortierung und Einfügungssortierung. Diese Komplexität bedeutet, dass Ihre Algorithmen über Stunden oder sogar Tage laufen können, bevor Sie eine Lösung erreichen.
Kubische Komplexität O (n 3 ) Operationen wachsen sogar schneller als quadratische Komplexität, da Sie jetzt mehrere verschachtelte Iterationen haben. Wenn ein Algorithmus diese Reihenfolge der Komplexität hat und Sie eine bescheidene Menge an Daten verarbeiten müssen (100 000 Elemente), kann Ihr Algorithmus über Jahre laufen. Wenn Sie eine Anzahl von Operationen haben, bei denen es sich um eine Potenz der Eingabe handelt, ist es üblich, den Algorithmus als in Polynomialzeit ausgeführt zu betrachten.
Exponentielle Komplexität O (2 n ) Der Algorithmus nimmt die doppelte Anzahl der vorherigen Operationen für jedes hinzugefügte neue Element ein. Wenn ein Algorithmus diese Komplexität hat, können selbst kleine Probleme ewig dauern. Viele Algorithmen, die erschöpfende Suchen durchführen, haben eine exponentielle Komplexität. Das klassische Beispiel für diese Komplexität ist jedoch die Berechnung von Fibonacci-Zahlen.
Faktorkomplexität O (n!) Dieser Algorithmus stellt aufgrund der großen Anzahl möglicher Kombinationen zwischen den Elementen einen wahren Alptraum der Komplexität dar. Stellen Sie sich vor: Wenn Ihre Eingabe 100 Objekte ist und eine Operation auf Ihrem Computer 10 -6 Sekunden dauert (eine vernünftige Geschwindigkeit für jeden Computer heutzutage), benötigen Sie ungefähr 10 140 Jahre um die Aufgabe erfolgreich abzuschließen (eine unmögliche Zeitspanne, da das Alter des Universums auf 10 999 14 3999 Jahre geschätzt wird). Ein berühmtes Problem der komplexen Faktoren ist das Problem der Handelsvertreter, bei dem ein Verkäufer die kürzeste Route für den Besuch vieler Städte finden muss und in die Startstadt zurückkehren muss.
Umgang mit Algorithm Complexity - Dummies

Die Wahl des Herausgebers

Netzwerkgrundlagen: IPv6-Adresse Vereinfachte Notation - Dummies

Netzwerkgrundlagen: IPv6-Adresse Vereinfachte Notation - Dummies

Bei der Arbeit mit IPv6-Adressen kann es viel Zeit in Anspruch nehmen. schreibe deine Adressen - immerhin sind sie 128 Bit lang. Um das Leben einfacher zu machen, gibt es einige Regeln, die Sie verwenden können, um diese Schreibweise zu verdichten: Führende Nullen in der Adresse sind optional. Für einen Adressblock wäre also 0A45 gleich A45, ...

Netzwerkgrundlagen: IP-Netzwerkklassen - Dummies

Netzwerkgrundlagen: IP-Netzwerkklassen - Dummies

Netzwerkadressierungsarchitektur unterteilt den Adressraum für Internet Protocol Version 4 (IPv4 ) in fünf Adressklassen. Jede Klasse, die in den ersten vier Bits der Adresse codiert ist, definiert entweder eine andere Netzwerkgröße, d.h. e. Anzahl der Hosts für Unicast-Adressen (Klassen A, B, C) oder Multicast-Netzwerk (Klasse D). Die fünfte Klasse (E) address ...

Netzwerkgrundlagen: Netzwerkport Übersicht - Dummys

Netzwerkgrundlagen: Netzwerkport Übersicht - Dummys

In TCP / IP- und UDP-Netzwerken ist ein Port ein Endpunkt eine logische Verbindung. Die Portnummer gibt an, um welchen Port es sich handelt. Port 80 wird beispielsweise für HTTP-Datenverkehr verwendet. Wenn Sie einen Befehl wie netstat -n unter Microsoft Windows oder Linux verwenden, sehen Sie eine Auflistung der lokalen Adressen ...

Die Wahl des Herausgebers

Excel-Dashboards: Wie Sie Ihr erstes Makro aufzeichnen - Dummies

Excel-Dashboards: Wie Sie Ihr erstes Makro aufzeichnen - Dummies

Wenn Sie ein Anfänger auf dem Dashboard sind Automatisierung in Excel ist es unwahrscheinlich, dass Sie den VBA-Code (Visual Basic für Applikationen) von Hand schreiben können, um Makros zu erstellen. Ohne vollständige Kenntnis des Objektmodells und der Syntax von Excel wäre das Schreiben des benötigten Codes für die meisten Anfänger unmöglich. Hier können Sie ein Makro aufzeichnen ...

Excel-Formelberechnungsmodi - Dummys

Excel-Formelberechnungsmodi - Dummys

Standardmäßig ist Excel so eingestellt, dass es automatisch neu berechnet wird. Wenn Sie eine der Zellen ändern, auf die in einer bestimmten Formel verwiesen wird, berechnet Excel diese Formel automatisch neu, sodass ein korrektes Ergebnis basierend auf den Änderungen in den Zellbezügen zurückgegeben wird. Wenn die Formel, die neu berechnet wird, auch als Zellenreferenz in anderen verwendet wird ...

Excel Formelfehler - Dummies

Excel Formelfehler - Dummies

Es ist nicht immer glatt, wenn Sie mit Excel-Formeln arbeiten. Manchmal gibt eine Formel einen Fehlerwert anstelle des erwarteten Werts zurück. Excel hilft Ihnen, das Problem zu identifizieren, indem Sie einen von sieben Fehlerwerten zurückgeben: # DIV / 0! , # N / A, #NAME? , #NULL! , #NUM! , #REF! und #WERT! , erklärt in der folgenden Liste: # DIV / 0! : ...

Die Wahl des Herausgebers

Teilen, Weiterverbreiten und Kommentieren von Google+ Posts - Dummies

Teilen, Weiterverbreiten und Kommentieren von Google+ Posts - Dummies

, Wenn Sie mit der Verwendung und Veröffentlichung beginnen Bei Google+ möchten Sie gelegentlich Links und Bilder teilen, die Beiträge anderer freigeben, ihre Beiträge kommentieren und andere in Ihren eigenen Google+ Beiträgen erwähnen. Vielleicht fragen Sie sich auch, wie Sie andere dazu bringen, Ihre eigenen Beiträge öfter zu kommentieren. Teilen von Links und Bildern in Google+ So geben Sie ein ...

Teilen Ihrer Google+ Posts mit bestimmten Personen - Dummies

Teilen Ihrer Google+ Posts mit bestimmten Personen - Dummies

Beiträge auf Google+ sind ganz einfach und können posten Text, Links, Fotos, Videos und sogar Ihren aktuellen Standort. Der schwierigste Teil des Beitrags auf Google+ besteht darin, auszuwählen, wen Sie Ihren Beitrag sehen möchten. Google+ verwendet Ihre Kreise, um festzulegen, wer Ihre Beiträge sehen kann. Kreise sind etwas einfacher als Listen, weil ...

Taggen von Personen in Google+ Fotos - Dummies

Taggen von Personen in Google+ Fotos - Dummies

Sie können Personen in Ihren Kreisen auf jedem Foto auf Google+ markieren. Wenn Sie eine Person in einem Foto taggen, wird diese Person über ihre Google+ Benachrichtigungen benachrichtigt. Sie können dann das Tag entfernen oder genehmigen, und das Foto wird mit dem Tag des Namens dieser Person darin angezeigt. Um jemanden zu markieren, ...