Was sind Computeralgorithmen und wie funktionieren sie?

Was sind Computeralgorithmen und wie funktionieren sie?

What Are Computer Algorithms

Wenn Sie sich nicht für Mathematik oder Programmierung interessieren, mag das Wort Algorithmus für Sie griechisch sein, aber es ist einer der Bausteine ​​​​von allem, was Sie zum Lesen dieses Artikels verwenden. Hier ist eine kurze Erklärung, was sie sind und wie sie funktionieren.



Haftungsausschluss: Ich bin kein Mathematik- oder Informatiklehrer, daher sind nicht alle von mir verwendeten Begriffe technischer Natur. Das liegt daran, dass ich versuche, alles in einfachem Englisch zu erklären, da die Leute mit Mathematik nicht ganz vertraut sind. Davon abgesehen ist etwas Mathematik im Spiel, und das ist unvermeidlich. Mathe-Freaks, könnt ihr gerne in den Kommentaren korrigieren oder besser erklären, aber bitte haltet es einfach für die mathematisch Abgelehnten unter uns.

Himbeer-Pi-Sd-Karte kopieren

Bild von Ian Ruotsala

Was ist ein Algorithmus?

Das Wort „Algorithmus“ hat eine ähnliche Etymologie wie „Algebra“, außer dass es sich auf den arabischen Mathematiker al-Khwarizmi selbst bezieht (nur ein interessanter Leckerbissen). Ein Algorithmus ist für die Nicht-Programmierer unter uns eine Reihe von Anweisungen, die eine Eingabe A annehmen und eine Ausgabe B bereitstellen, die die beteiligten Daten in irgendeiner Weise verändert. Algorithmen haben eine Vielzahl von Anwendungen. In der Mathematik können sie unter anderem bei der Berechnung von Funktionen aus Punkten in einem Datensatz helfen. Abgesehen von ihrer Verwendung in der Programmierung selbst spielen sie eine wichtige Rolle bei Dingen wie Dateikomprimierung und Datenverschlüsselung.

Eine grundlegende Anleitung

Nehmen wir an, Ihr Freund trifft Sie in einem Lebensmittelgeschäft und Sie führen ihn zu Ihnen. Sie sagen Dinge wie kommen Sie durch die rechte Tür herein, gehen Sie links an der Fischabteilung vorbei, und wenn Sie die Molkerei sehen, sind Sie an mir vorbeigekommen. Algorithmen funktionieren so. Anhand eines Flussdiagramms können wir Anweisungen anhand von Kriterien veranschaulichen, die wir im Voraus kennen oder während des Prozesses herausfinden.

(Bild mit dem Titel Eisbrecher-Routine EDIT: mit freundlicher Genehmigung von Trigger und Freilauf )

Anzeige

Von START aus würdest du den Weg hinuntergehen, und je nachdem, was passiert, folgst du dem Fluss zu einem Endergebnis. Flussdiagramme sind visuelle Werkzeuge, die eine Reihe von Anweisungen, die von Computern verwendet werden, verständlicher darstellen können. In ähnlicher Weise helfen Algorithmen dabei, dasselbe mit mathematischeren Modellen zu erreichen.

Grafiken

Lassen Sie uns eine Grafik verwenden, um die verschiedenen Möglichkeiten zu veranschaulichen, wie wir Anweisungen geben können.

wie man einen Beitrag teilbar macht

Wir können diesen Graphen als eine Verbindung zwischen all seinen Punkten ausdrücken. Um dieses Bild zu reproduzieren, können wir jemand anderem eine Reihe von Anweisungen geben.

Methode 1

Wir können dies als eine Reihe von Punkten darstellen, und die Informationen würden der Standardform von graph = {(x1, y1), (x2, y2), …, (xn, yn)} folgen.

Graph = {(0,0), (3,0), (3,3), (5,5), (7,10), (8,7), (9,4), (10,1) }

Es ist ziemlich einfach, jeden Punkt nacheinander zu zeichnen und mit dem vorherigen Punkt zu verbinden. Stellen Sie sich jedoch einen Graphen mit tausend Punkten oder mehreren Segmenten vor, die alle in alle Richtungen verlaufen. Diese Liste würde viele Daten enthalten, oder? Und dann jedes einzelne verbinden zu müssen, kann ein Schmerz sein.

Methode 2

Wir können auch einen Startpunkt angeben, die Steigung der Linie zwischen ihm und dem nächsten Punkt, und angeben, wo der nächste Punkt zu erwarten ist, indem wir die Standardform von graph={(Startpunkt}, [m1, x1, h1 ], …, [mn, xn, hn]} Hier steht die Variable 'm' für die Steigung der Geraden, 'x' für die Zählrichtung (ob x oder y) und 'h' gibt an, wie es geht viele, um in diese Richtung zu zählen.Sie können auch daran denken, nach jeder Bewegung einen Punkt einzuzeichnen.

Graph = {(0,0), [0,x,3], [0,y,3], [1,x,2], [2.5,x,2], [-3,x,1], [-3,x,1], [-3,x,1]}

Anzeige

Am Ende erhalten Sie dieselbe Grafik. Sie können sehen, dass die letzten drei Begriffe in diesem Ausdruck gleich sind, also können wir das vielleicht reduzieren, indem wir einfach dreimal wiederholen. Nehmen wir an, jedes Mal, wenn Sie die Variable „R“ sehen, bedeutet dies, dass das Letzte wiederholt wird. Wir können das schaffen:

Graph = {(0,0), [0,x,3], [0,y,3], [1,x,2], [2.5,x,2], [-3,x,1], [R=2]}

Was ist, wenn die einzelnen Punkte nicht wirklich wichtig sind, sondern nur der Graph selbst? Wir können die letzten drei Abschnitte wie folgt zusammenfassen:

Warum verwendet Windows Backslash?

Graph = {(0,0), [0,x,3], [0,y,3], [1,x,2], [2.5,x,2], [-3,x,3]}

Es verkürzt die Dinge ein wenig von dem, was sie vorher waren.

Methode 3

Versuchen wir es anders.

y = 0, 0≤x≤3
x = 0, 0≤y≤3
y = x, 3≤x≤5
y = 2,5x-7,5, 5≤x≤7
y = -3x + 29, 7≤x≤8
y = -3x + 29, 8≤x≤9
y = -3x + 29,9≤x≤10

Hier haben wir es in rein algebraischer Hinsicht. Auch hier, wenn die Punkte selbst keine Rolle spielen und nur der Graph, können wir die letzten drei Elemente konsolidieren.

y = 0, 0≤x≤3
x = 0, 0≤y≤3
y = x, 3≤x≤5
y = 2,5x-7,5, 5≤x≤7
y = -3x + 29, 7≤x≤10

Welche Methode Sie wählen, hängt von Ihren Fähigkeiten ab. Vielleicht sind Sie mit Mathematik und Graphiken gut, also wählen Sie die letzte Option. Vielleicht können Sie gut navigieren, also wählen Sie die zweite Option. Im Bereich der Computer erledigen Sie jedoch viele verschiedene Arten von Aufgaben und die Fähigkeiten des Computers ändern sich nicht wirklich. Daher werden Algorithmen für die Aufgaben optimiert, die sie ausführen.

Ein weiterer wichtiger Punkt ist, dass jede Methode auf einem Schlüssel beruht. Jede Anleitung ist nutzlos, es sei denn, Sie wissen, was damit zu tun ist. Wenn Sie nicht wissen, dass Sie jeden Punkt zeichnen und die Punkte verbinden sollen, bedeutet der erste Satz von Punkten nichts. Wenn Sie nicht wissen, was jede Variable in der zweiten Methode bedeutet, können Sie sie nicht anwenden, ähnlich wie der Schlüssel zu einer Chiffre. Dieser Schlüssel ist auch ein wesentlicher Bestandteil der Verwendung von Algorithmen, und oft wird dieser Schlüssel in der Community oder über einen Standard gefunden.

Dateikomprimierung

Wenn Sie eine ZIP-Datei herunterladen, extrahieren Sie den Inhalt, damit Sie alles darin verwenden können. Heutzutage können die meisten Betriebssysteme in .zip-Dateien wie normale Ordner eintauchen und alles im Hintergrund erledigen. Auf meinem Windows 95-Rechner musste ich vor über einem Jahrzehnt alles manuell extrahieren, bevor ich mehr als die Dateinamen darin sehen konnte. Das liegt daran, dass das, was als ZIP-Datei auf der Festplatte gespeichert wurde, nicht in brauchbarer Form war. Denken Sie an eine ausziehbare Couch. Wenn Sie es als Bett verwenden möchten, müssen Sie die Kissen entfernen und es aufklappen, was mehr Platz beansprucht. Wenn Sie es nicht brauchen oder transportieren möchten, können Sie es wieder zusammenklappen.

Anzeige

Komprimierungsalgorithmen werden speziell für die Dateitypen angepasst und optimiert, auf die sie abzielen. Audioformate verwenden beispielsweise jeweils eine andere Methode zum Speichern von Daten, die, wenn sie vom Audio-Codec decodiert werden, eine Klangdatei ähnlich der ursprünglichen Wellenform ergeben. Weitere Informationen zu diesen Unterschieden finden Sie in unserem vorherigen Artikel, Was sind die Unterschiede zwischen all diesen Audioformaten? Verlustfreie Audioformate und .zip-Dateien haben eines gemeinsam: Beide liefern nach der Dekomprimierung die Originaldaten in ihrer exakten Form. Verlustbehaftete Audio-Codecs verwenden andere Mittel, um Speicherplatz zu sparen, z. Am Ende können wir zwar den Unterschied zwischen einem MP3- und einem CD-Track nicht wirklich hören, aber es gibt definitiv ein Informationsdefizit bei ersterem.

So sehen Sie archivierte E-Mails

Datenverschlüsselung

Algorithmen werden auch bei der Sicherung von Daten- oder Kommunikationsleitungen verwendet. Anstatt Daten so zu speichern, dass sie weniger Speicherplatz benötigen, werden sie auf eine Weise gespeichert, die von anderen Programmen nicht erkannt werden kann. Wenn jemand Ihre Festplatte stiehlt und mit dem Scannen beginnt, kann er selbst beim Löschen von Dateien Daten aufnehmen, da die Daten selbst noch vorhanden sind, obwohl der Weiterleitungsort dorthin verschwunden ist. Wenn Daten verschlüsselt sind, sieht alles, was gespeichert wird, nicht so aus, wie es ist. Es sieht normalerweise zufällig aus, als ob sich im Laufe der Zeit eine Fragmentierung aufgebaut hätte. Sie können Daten auch speichern und als einen anderen Dateityp anzeigen. Gut dafür eignen sich Bilddateien und Musikdateien, da diese z. B. recht groß sein können, ohne Verdacht zu erregen. All dies geschieht durch die Verwendung mathematischer Algorithmen, die eine Art von Eingabe aufnehmen und in eine andere, sehr spezifische Art von Ausgabe umwandeln. Weitere Informationen zur Funktionsweise der Verschlüsselung finden Sie unter HTG erklärt: Was ist Verschlüsselung und wie funktioniert sie?


Algorithmen sind mathematische Werkzeuge, die eine Vielzahl von Anwendungen in der Informatik bieten. Sie arbeiten daran, auf konsistente Weise einen Pfad zwischen einem Startpunkt und einem Endpunkt bereitzustellen, und bieten die Anweisungen, um diesem zu folgen. Wissen Sie mehr als das, was wir hervorgehoben haben? Teile deine Erklärungen in den Kommentaren!

WEITER LESEN