Zuhause Persönliche Finanzen Arbeiten mit Algorithmic Functions - dummies

Arbeiten mit Algorithmic Functions - dummies

Video: How Computers Calculate - the ALU: Crash Course Computer Science #5 2025

Video: How Computers Calculate - the ALU: Crash Course Computer Science #5 2025
Anonim

Eine Funktion in der Mathematik ist einfach eine Möglichkeit, einige Eingaben einer Antwort zuzuordnen. Anders ausgedrückt ist eine -Funktion eine Transformation (basierend auf mathematischen Operationen), die Ihre Eingabe in eine Antwort umwandelt (mappt).

Für bestimmte Eingabewerte (normalerweise mit den Buchstaben x oder n bezeichnet) haben Sie eine entsprechende Antwort mit der Mathematik, die die Funktion definiert. Zum Beispiel sagt eine Funktion wie f (n) = 2 n, dass wenn Ihre Eingabe eine Zahl n ist, Ihre Antwort ist die Zahl n multipliziert mit 2.

Die Verwendung der Größe der Eingabe ist sinnvoll, da dies ein zeitkritisches Alter ist und das Leben der Menschen mit einer wachsenden Datenmenge vollgestopft ist. Alles zu einer mathematischen Funktion zu machen, ist etwas weniger intuitiv, aber eine Funktion, die beschreibt, wie ein Algorithmus seine Lösung auf die Menge der Daten bezieht, die er empfängt, ist etwas, das ohne spezifische Hardware- oder Softwareunterstützung analysiert werden kann. Es ist auch leicht zu vergleichen mit anderen Lösungen, angesichts der Größe Ihres Problems. Analyse von Algorithmen ist wirklich ein überwältigendes Konzept, weil es eine komplexe Reihe von Schritten in eine mathematische Formel reduziert.

Außerdem ist eine Analyse von Algorithmen meist nicht einmal daran interessiert, die Funktion genau zu definieren. Was Sie wirklich tun möchten, ist eine Zielfunktion mit einer anderen Funktion zu vergleichen. Diese Vergleichsfunktionen erscheinen in einem Satz von vorgeschlagenen Funktionen, die im Gegensatz zu dem Zielalgorithmus schlecht funktionieren. Auf diese Weise müssen Sie keine Zahlen in Funktionen von größerer oder geringerer Komplexität einfügen. Stattdessen befassen Sie sich mit einfachen, vorgefertigten und bekannten Funktionen. Es mag grob klingen, aber es ist effektiver und ähnelt der Klassifizierung der Algorithmen in Kategorien, anstatt eine exakte Leistungsmessung zu erhalten.

Die Menge der verallgemeinerten Funktionen wird Big O Notation genannt, und Sie begegnen oft diesem kleinen Satz von Funktionen (in Klammern gesetzt und vorangestellt mit einem Großbuchstaben O >) verwendet, um die Leistung von Algorithmen darzustellen. Die Abbildung zeigt die Analyse eines Algorithmus. Ein kartesisches Koordinatensystem kann seine Funktion durch RAM-Simulation darstellen, wobei die Abszisse (die x-Koordinate) die Größe der Eingabe ist und die Ordinate (die y-Koordinate) resultierende Anzahl von Operationen. Sie können drei dargestellte Kurven sehen. Die Eingabegröße ist wichtig. Aber auch die Qualität spielt eine Rolle (zum Beispiel bei der Bestellung von Problemen ist es schneller, eine Eingabe zu bestellen, die bereits fast bestellt ist).Folglich zeigt die Analyse einen ungünstigsten Fall, f 1 (n), einen durchschnittlichen Fall, f 2 (n), und ein bester Fall, f 3 (n). Auch wenn der Durchschnittsfall Ihnen vielleicht eine allgemeine Vorstellung gibt, ist das, was Sie wirklich interessiert, der schlimmste Fall, da Probleme auftreten können, wenn Ihr Algorithmus Schwierigkeiten hat, eine Lösung zu finden. Die Big-O-Funktion ist diejenige, die nach einem bestimmten

n0 -Wert (der Schwellenwert für die Berücksichtigung einer Eingabe groß) immer zu einer größeren Anzahl von Operationen mit derselben Eingabe führt als die Worst-Case-Funktion > f1 . Daher ist die Big-O-Funktion sogar noch pessimistischer als die, die Ihren Algorithmus repräsentiert, so dass Sie unabhängig von der Qualität der Eingabe sicher sein können, dass die Dinge nicht schlimmer werden können. Komplexität eines Algorithmus im Fall des besten, durchschnittlichen und schlechtesten Eingabefalls. Viele mögliche Funktionen können zu schlechteren Ergebnissen führen, aber die Auswahl der Funktionen, die von der Big O-Notation angeboten werden, ist eingeschränkt, da sie die Komplexitätmessung vereinfachen soll, indem ein Standard vorgeschlagen wird. Folglich enthält dieser Abschnitt nur die wenigen Funktionen, die Teil der Big-O-Notation sind. Die folgende Liste beschreibt sie in wachsender Reihenfolge der Komplexität:

Konstante Komplexität O (1):

Die gleiche Zeit, egal wie viel Input Sie bereitstellen. Am Ende ist es eine konstante Anzahl von Operationen, egal wie lange die Eingabedaten sind. Diese Komplexität ist in der Praxis recht selten.

  • 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 effizienteren ist. 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 eine Iteration, bei der die Eingabe einmal gescannt und eine Operation auf jedes Element angewendet wird.
  • 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 z. B. Mergesort, 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 (verschachtelte Iterationen in der Informatik), 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, auf den Algorithmus als zu verweisen, der in polynomieller Zeit läuft. Exponentialkomplexität O (2 n
  • ): Der Algorithmus nimmt die doppelte Anzahl vorangegangener Operationen für jedes hinzugefügte neue Element an. 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!): Ein echter Alptraum der Komplexität wegen der großen Anzahl möglicher Kombinationen zwischen den Elementen. Stellen Sie sich vor: Wenn Ihre Eingabe 100 Objekte umfasst und eine Operation auf Ihrem Computer 10
  • -6 Sekunden dauert (heutzutage eine angemessene Geschwindigkeit für jeden Computer), benötigen Sie ungefähr 10 140 Jahre um die Aufgabe erfolgreich abzuschließen (eine unmögliche Zeitspanne seit dem Alter des Universums wird auf 10 999 14 3999 Jahre geschätzt). 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.
Arbeiten mit Algorithmic Functions - dummies

Die Wahl des Herausgebers

Was Sie über den Makler und die Hauptbeziehung für die Immobilienlizenzprüfung wissen sollten - Dummies

Was Sie über den Makler und die Hauptbeziehung für die Immobilienlizenzprüfung wissen sollten - Dummies

Die Elemente der Verantwortung eines Agenten gegenüber dem Auftraggeber werden in einem Wort zusammengefasst - Treuhänder. Die Immobilienlizenzprüfung wird zweifellos Fragen zu diesen Treuhandpflichten stellen. Treuhänder bedeutet treuer Diener, und ein Agent ist der Treuhänder des Auftraggebers. Der Vertreter vertritt getreu die Interessen des Auftraggebers vor allen anderen ...

Erkennen Miller Analogie Test 1: 3, 2: 4 Analogien - Dummies

Erkennen Miller Analogie Test 1: 3, 2: 4 Analogien - Dummies

The Der Miller Analogies Test (MAT) ist ein standardisierter Test, der normalerweise für die Zulassung von Absolventen verwendet wird. Der Test besteht vollständig aus Analogien. Der Miller Analogies Test verwendet mehrere Analogtypen wie 1: 3, 2: 4. Die Erkennung der Art der verwendeten Analogie spielt eine entscheidende Rolle bei der Auswahl der richtigen Antwort für diese Frage. ...

Erkennen Miller Analogie Test 1: 2, 3: 4 Analogien - Dummies

Erkennen Miller Analogie Test 1: 2, 3: 4 Analogien - Dummies

The Der Miller Analogies Test (MAT) ist ein standardisierter Test, der normalerweise für die Zulassung von Absolventen verwendet wird. Der Test besteht vollständig aus Analogien. Der Miller Analogies Test verwendet mehrere Analogtypen wie 1: 2, 3: 4. Die Erkennung der Art der verwendeten Analogie spielt eine entscheidende Rolle bei der Auswahl der richtigen Antwort für diese Frage. ...

Die Wahl des Herausgebers

Excel-Dashboards und -Berichte: So führen Sie Makros aus - Dummies

Excel-Dashboards und -Berichte: So führen Sie Makros aus - Dummies

Makros sind sehr nützlich für Ihre Excel Dashboards und Berichte. Um Ihre Makros in Aktion zu sehen, wählen Sie den Befehl Makros auf der Registerkarte Entwickler. Das in dieser Abbildung gezeigte Dialogfeld wird angezeigt, in dem Sie das Makro auswählen können, das Sie ausführen möchten. Wählen Sie das AddDataBars-Makro aus, und klicken Sie auf die Schaltfläche Ausführen. Wenn alles gut geht, ...

Excel-Dashboards und Berichte: Halten Sie Ihre Pivot-Tabelle frisch - Dummies

Excel-Dashboards und Berichte: Halten Sie Ihre Pivot-Tabelle frisch - Dummies

So langweilig wie Ihre Pivot-Tabellen Wie es scheint, werden sie schließlich zu den Stars Ihrer Excel-Berichte und Dashboards. Es ist daher wichtig, dass Sie Ihre Pivottabellen frisch und relevant halten. Im Laufe der Zeit können sich Ihre Daten mit neu hinzugefügten Zeilen und Spalten ändern und wachsen. Die Aktion der Aktualisierung Ihrer Pivot-Tabelle mit diesen ...

Excel 2010 Für Dummies Cheat Sheet - Dummies

Excel 2010 Für Dummies Cheat Sheet - Dummies

Auf den ersten Blick kann es schwierig sein, die vielen Menüs zu verstehen , Tabulatoren, Spalten und Zeilen der Excel 2010-Benutzeroberfläche. Dieser Cheat Sheet hilft Ihnen jedoch, Ihren Weg zu navigieren, indem Sie Tastenanschläge für die Bewegung des Zellen-Cursors zu einer neuen Zelle zeigen, einfache Regeln für die Dateneingabe-Etikette, häufige Ursachen einiger ...

Die Wahl des Herausgebers

Verwendung von Web Stats zur Verbesserung Ihrer Website - Dummies

Verwendung von Web Stats zur Verbesserung Ihrer Website - Dummies

Leute mögen nicht langsame Webseiten. Die Verwendung von Webstatistiken kann sicherstellen, dass Sie keine haben. Heutzutage werden wir alle durch schnelle Internetverbindungen verwöhnt, und Forschungsergebnisse zeigen, dass Webnutzer auf eine andere Website klicken, wenn Ihre Website mehr als zwei Sekunden benötigt, um sie zu öffnen. Eine schnellere Site behält mehr Besucher. mit einem langsameren ...

Webhost-Systemsteuerungsoptionen - dummies

Webhost-Systemsteuerungsoptionen - dummies

Sie haben mehrere Optionen für Web gehostete Control Panels. Die beliebteste und offensichtlichste Wahl ist cPanel. cPanel ist aufgrund seiner Balance zwischen Flexibilität und Benutzerfreundlichkeit eine gute Wahl für Bedienfelder. Die Wahl des Bedienfelds ist jedoch eine Frage der persönlichen Vorlieben und Sie müssen eines finden, das am besten passt ...

Zehn Essential Online Web Hosting Ressourcen - Dummies

Zehn Essential Online Web Hosting Ressourcen - Dummies

Bücher sind großartige Referenzen, aber es gibt auch einige wirklich gute Web-Hosting-Ressourcen online verfügbar, um Ihnen zusätzliche Informationen zu geben, wenn Sie nicht finden können, was Sie brauchen. Haben Sie keine Angst, das Internet zu überprüfen. ZeltBlogger. com TentBlogger. com ist im Besitz und geschrieben von John Saddington. Es ist wahrscheinlich die beste Online-Ressource für praktisch alles mit ...