EIN Algorithmus Es handelt sich um eine Reihe von Anweisungen, mit denen eine bestimmte Aufgabe ausgeführt werden soll. Das heißt, es ist ein systematisches Verfahren, das in einer endlichen Anzahl von Schritten die Antwort auf eine Frage oder die Lösung eines Problems liefert. Ein Beispiel für einen Algorithmus ist der der Google-Suchmaschine, bei der beim Einfügen eines Wortes mehrere Ergebnisse in Form von Webseiten angezeigt werden.
Dies kann ein komplexer Vorgang sein, z. B. das Abspielen einer Musikdatei, oder ein einfacher Vorgang, z. B. das Hinzufügen von zwei Zahlen. In der Computerprogrammierung werden Algorithmen als Funktionen erstellt. Diese Funktionen sind kleine Programme, auf die ein größeres Programm verweisen kann.
Eine Bildbetrachtungsanwendung kann eine Bibliothek von Funktionen enthalten, die jeweils einen bestimmten Algorithmus verwenden, um verschiedene Bilddateiformate darzustellen..
Ein Bildbearbeitungsprogramm kann Algorithmen enthalten, die zum Verarbeiten von Bilddaten ausgelegt sind. Einige Beispiele sind Zuschneiden, Ändern der Größe, Schärfen, Verwischen, Reduzieren roter Augen und Verbessern der Farbe..
Artikelverzeichnis
Der Algorithmus muss klar und eindeutig sein. Jeder Ihrer Schritte oder Handlungen muss genau definiert sein, in jeder Hinsicht streng klar sein und eindeutig nur eine Bedeutung haben..
Ein Algorithmus hat null oder mehr Eingaben, die von einem bestimmten Satz von Objekten stammen. Wenn der Algorithmus angibt, dass Eingabedaten verwendet werden sollen, sollten diese Eingabedaten gut definiert sein.
Der Algorithmus hat immer einen oder mehrere Ausgänge, die eine Beziehung zu den Eingängen haben. Der Algorithmus muss klar definieren, welche Ausgabeinformationen erzeugt werden, und er muss auch genau definiert sein.
Der Algorithmus muss endlich sein, dh er muss immer irgendwann nach einer endlichen Anzahl von Schritten enden und darf nicht an Endlosschleifen oder dergleichen hängen bleiben.
Der Algorithmus muss clever und einfach sein, damit er problemlos mit den verfügbaren Ressourcen ausgeführt werden kann. Daher darf es keine zukünftige Technologie enthalten.
Der entworfene Algorithmus muss unabhängig von der Sprache sein, dh er darf nur aus einfachen Anweisungen bestehen, die in jeder Programmiersprache implementiert werden können, und das Ergebnis ist jedoch immer das gleiche wie erwartet.
Es gibt immer verschiedene Möglichkeiten, eine bestimmte Operation innerhalb eines Programms auszuführen. Daher versuchen Programmierer, möglichst effiziente Algorithmen zu erstellen..
Durch die Verwendung sehr effizienter Algorithmen kann garantiert werden, dass die Programme mit einem Minimum an Systemressourcen mit der höchsten Geschwindigkeit ausgeführt werden.
Algorithmen werden jedoch nicht immer beim ersten Mal fehlerfrei erstellt. Aus diesem Grund möchten Entwickler sie verbessern, um sie in zukünftige Softwareupdates aufzunehmen..
Wenn eine neue Version einer Anwendung mit besserer Leistung bekannt ist, bedeutet dies, dass diese Version effizientere Algorithmen enthält.
Der Algorithmus ist ein äußerst nützliches Instrument zur Ausführung von Arbeiten. Beim Rechnen stellt die Auswahl des besten Algorithmus sicher, dass der Computer die gegebene Aufgabe bestmöglich erledigt.
Daher dient es dazu, ein Computerprogramm mit den verfügbaren Ressourcen zu optimieren. Das heißt, wenn Sie sich entscheiden, ein Problem mit den besten Algorithmen zu lösen, möchten Sie die beste Kombination aus Programmgeschwindigkeit und geringerem Speicherverbrauch.
Die verschiedenen Algorithmen, die untersucht werden können, sind so unterschiedlich wie die Probleme, die sie lösen. Es ist jedoch sehr wahrscheinlich, dass das Problem, das Sie lösen möchten, in mancher Hinsicht einem anderen Problem ähnelt..
Wenn Sie eine Vielzahl von Algorithmen verstehen, können Sie die für ein Problem am besten geeignete auswählen und richtig anwenden.
Diese Algorithmen sind speziell auf die Dateitypen abgestimmt und optimiert, auf die sie abzielen. Beispielsweise verwendet jedes Audioformat eine andere Art der Datenspeicherung. Wenn es vom Audio-Codec dekodiert wird, wird eine Audiodatei generiert, die der ursprünglichen Wellenform ähnelt.
Algorithmen werden auch zum Schutz von Daten oder Kommunikationsleitungen verwendet. Anstatt komprimierte Daten so zu speichern, dass weniger Speicherplatz benötigt wird, werden sie so gespeichert, dass andere Programme sie nicht erkennen können. Wenn Daten verschlüsselt werden, sieht das, was gespeichert wird, nicht so aus, wie es ist.
Um einen Computer dazu zu bringen, etwas zu tun, müssen Sie ein Computerprogramm schreiben. Um dieses Programm zu schreiben, müssen Sie dem Computer Schritt für Schritt mitteilen, was er tun soll.
Der Computer führt dann das Programm aus und führt jede Anweisung automatisch aus, um das Endergebnis zu erzielen. Sie können nicht nur angeben, was mit dem Computer geschehen soll, sondern auch festlegen, wie er über den Algorithmus ausgeführt werden soll. Dies ist die grundlegende Technik, mit der die Arbeit ausgeführt wird.
Angenommen, Sie haben einen Freund, der am Flughafen ankommt und vom Flughafen zu unserem Haus muss. Dies sind vier verschiedene Algorithmen, die zur Lösung dieser Situation verwendet werden könnten:
- Wenn das Flugzeug ankommt, ruf mein Handy an.
- Treffen Sie mich außerhalb der Gepäckausgabe.
- Gehe zum Taxistand.
- Steig in ein Taxi.
- Geben Sie dem Fahrer meine Adresse.
- Verlassen Sie den Flughafen und nehmen Sie den Bus Nr. 70.
- Wenn Sie zur Main Street kommen, nehmen Sie den Bus 14.
- Steigen Sie an der Elmo Street aus.
- Gehen Sie zwei Blocks nach Norden zu meinem Haus.
- Nehmen Sie einen Shuttle zu dem Ort, an dem sie Autos mieten.
- Mieten Sie ein Fahrzeug.
- Folgen Sie den GPS-Anweisungen, um zu meinem Haus zu gelangen.
Alle vier Algorithmen erreichen genau das gleiche Ziel, aber jeder macht es anders. Jeder Algorithmus hat auch unterschiedliche Kosten und Reisezeiten. Daher wird der Algorithmus entsprechend den Umständen ausgewählt.
Der Algorithmus muss über bestimmte Ressourcen verfügen, um die Werte von einer externen Quelle lesen zu können. Die meisten Algorithmen erfordern einige Datenwerte, um ein bestimmtes Problem zu definieren. Zum Beispiel die Koeffizienten eines Polynoms.
Der Algorithmus muss über bestimmte Ressourcen verfügen, um arithmetische Berechnungen, Vergleiche, logische Bedingungen usw. durchführen zu können..
Der Algorithmus muss über bestimmte Mittel verfügen, um auf der Grundlage von Anfangsdaten, Benutzereingaben und / oder berechneten Ergebnissen zwischen zwei oder mehr möglichen Vorgehensweisen wählen zu können..
Der Algorithmus muss über bestimmte Mittel verfügen, um eine Reihe von Anweisungen wiederholt ausführen zu können, entweder für eine festgelegte Anzahl von Malen oder bis eine logische Bedingung erfüllt ist.
Der Algorithmus muss über bestimmte Ressourcen verfügen, um den Benutzer über die berechneten Ergebnisse informieren oder zusätzliche Daten vom Benutzer anfordern zu können.
Dieser Algorithmus ist sehr interessant, da er sich mit einem anderen Wert als Eingabeparameter aufruft, den er nach dem Lösen des vorherigen Eingabeparameters erhalten hat. Das heißt, es ruft sich wiederholt auf, bis das Problem behoben ist.
Probleme wie der Turm von Hanoi oder die gründliche Suche nach einem Graphen können mit diesen Algorithmen leicht gelöst werden..
In diesen Algorithmen ist es in zwei Teile unterteilt. Im ersten Teil wird das betreffende Problem in kleinere Unterprobleme des gleichen Typs unterteilt. Ebenso werden im zweiten Teil seine Unterprobleme gelöst und dann beide Teile kombiniert, um die endgültige Lösung des Problems zu erhalten..
Mit diesen Algorithmen können Sie beispielsweise Kombinationssortierungen und Schnellsortierungen durchführen.
Diese Algorithmen merken sich die Ergebnisse des vorherigen Laufs und verwenden sie, um neue Ergebnisse zu finden. Das heißt, sie lösen komplexe Probleme, indem sie sie in mehrere einfache Unterprobleme aufteilen und dann jedes einzelne lösen und später für die spätere Verwendung speichern..
Dieser Algorithmus durchsucht blind alle möglichen Lösungen, um eine oder mehrere Lösungen zu finden, die eine Funktion lösen können. Sie können sich Brute Force so vorstellen, dass Sie alle möglichen Zahlenkombinationen verwenden, um einen Safe zu öffnen..
Dieser Algorithmus löst Probleme rekursiv und versucht, ein Problem zu lösen, indem jeder Teil davon gelöst wird. Wenn die Lösung fehlschlägt, wird sie entfernt und zurückverfolgt, um eine andere Lösung zu finden.
Das heißt, dieser Algorithmus löst ein Unterproblem, aber wenn dies das Gesamtproblem nicht löst, macht er den letzten Schritt rückgängig und beginnt erneut, die Lösung für das Problem zu finden..
Dieser Pseudocode findet die Fakultät einer nicht negativen ganzen Zahl "N" unter Verwendung eines Rekursionsalgorithmus:
Die Fibonacci-Sequenz ist ein gutes Beispiel für einen dynamischen Programmieralgorithmus. Sie können es in diesem Pseudocode sehen:
- Wenn (N = 0 oder N = 1), ist Fibonacci (N) = 0
- Wenn nicht, ist Fibonacci (N) = Fibonacci (N-1) + Fibonacci (N-2)
Das Schachproblem mit 8 Königinnen ist ein gutes Beispiel. Dieses Problem stellt fest, dass sich 8 Königinnen auf einem Schachbrett befinden und sie so platziert werden müssen, dass keine der Königinnen in der Lage ist, andere anzugreifen, nachdem sie organisiert wurden..
- Algorithmus zur HIV-Diagnose.
- Suchmaschinen im Internet verwenden proprietäre Algorithmen, um die relevantesten Ergebnisse aus ihrem Suchindex für bestimmte Abfragen anzuzeigen..
- Rezepte sind wie mathematische Gleichungen Algorithmen.
- E-Mail weiß dank Algorithmen, wohin sie senden soll.
- Der Inhalt, der in sozialen Netzwerken angezeigt wird, erfolgt über Algorithmen. Tatsächlich ist alles, was im Web gemacht wird, das Produkt von Algorithmen.
- Videospiele sind algorithmisches Geschichtenerzählen.
- Smartphone-Apps sind nur Algorithmen.
- Die meisten Finanztransaktionen werden mit Algorithmen ausgeführt.
- Jedes Mal, wenn eine Spalte in einer Tabelle sortiert wird, greifen Algorithmen ein.
Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.