Beste Antwort
Meiner Meinung nach der beste Weg, um Algorithmen zu verstehen soll jeweils einen Algorithmus sezieren.
Ziel ist es, ein größeres Problem zu lösen, indem es in kleinere, besser handhabbare Probleme unterteilt wird. Je mehr Algorithmen Sie durch Zerlegen verstehen, desto besser werden Sie.
Hier ist die grobe Definition eines -Algorithmus :
Ein -Algorithmus ist eine Menge von Anweisungen zur Ausführung einer spezifischen Aufgabe.
Es gibt buchstäblich Tausende von Algorithmen in vielen Bereichen wie Computermathematik, die sowohl die Fächer Mathematik und Informatik, Astronomie, Bioinformatik, Geowissenschaften, Linguistik, Medizin, Physik, Statistik und vieles mehr umfasst !!
Hier sind einige Algorithmen, die bis heute äußerst nützlich sind:
- Einfügesortieralgorithmus
- Auswahlsortieralgorithmus
- Blasensortieralgorithmus
- Sortieralgorithmus zusammenführen
- Quicksort Algorithmus
- Binary Search-Algorithmus
- BFS-Algorithmus (Breadth First Search)
- DFS (Depth First Search) alg Orithmus
- Längste ansteigende Folge
- Bellman-Ford-Algorithmus
- Algorithmen für Inorder-, Preorder- und Postorder-Tree-Traversals
- Heap-Sortieralgorithmus
- Kruskals Algorithmus zum Finden des Minimum Spanning Tree
- Dijkstra-Algorithmus
- Prims Algorithmus
- Floyd-Warshall-Algorithmus
- Johnsons Algorithmus
- Hopcroft-Karp-Algorithmus
- Edmonds-Karp-Algorithmus
- Ford-Fulkerson-Algorithmus
- Karger-Algorithmus
- Euklidischer Algorithmus für den kürzesten Weg
- Algorithmus zum Rückwärtslöschen
- Ein * Suchalgorithmus
- Backtracking-Algorithmus
- Strahlensuche Algorithmus
- D * -Algorithmus
- Brute-Force-Suchalgorithmus
- SSS * -Algorithmus
- F * -Algorithmus
- Iterative Vertiefungstiefe Erster Suchalgorithmus
- Bron-Kerbosch-Algorithmus
- MaxCliqueDyn-Maximalclique-Algorithmus
- Tarjans stark verbundener Komponentenalgorithmus
- Kosaraju „s Algorithmus
- Hamming Entfernungsberechnungsalgorithmus
- Sparse-Algorithmus zur Berechnung des verteilten Speichers, der ein Durchbruch bei der Lösung des KNN- oder Post-Office-Problems war, bei dem es sich um ein Optimierungsproblem bei der Suche nach dem nächsten Nachbarn handelte.
Ich kann gehen auf, aber Sie bekommen den Punkt. All dies mag ein wenig einschüchternd erscheinen, aber wenn Sie sich zuerst für eines entscheiden und Zeit investieren, um es zu verstehen. Wenn Sie einen Algorithmus Ihrer Wahl zum Verständnis in kleinere Abschnitte unterteilen, erhalten Sie eine Motivation mit der Kraft, dass auch Sie ein Problem lösen können, das der Algorithmus löst. Ihr Geist füllt sich mit Freude an Intelligenz. Und Sie fragen sich, welches Problem im wirklichen Leben Sie lösen können, indem Sie das Gelernte anwenden. Ich denke, ich weiche ab.
Nun, um einige von ihnen besser zu verstehen, müssen Sie sich darauf vorbereiten, zu denken, als ob Sie derjenige sind, der die Aufgaben erledigt.
Wenn die Zukunft des Gebiets der Informatik ein unendlich gewebtes Stück Stoff ist, das zahlreiche Farben und andere Eigenschaften wie Dekorationen und Perlen und so weiter aufweist, dann Algorithmen sind die Fäden, die alles zusammenhalten.
Hier ist ein Zitat von Donald Knuth:
Etwas magisch Schönes passiert, wenn eine Folge von Befehlen und Entscheidungen eine Sammlung von Daten in organisierten zusammenfassen kann Muster oder um verborgene Strukturen zu entdecken.
Haben Sie jemals versucht, einem Rezept zu folgen? Wenn Sie dann Algorithmen verstanden haben, ist es jetzt an der Zeit, dass der Computer sie auch versteht!
Die meisten Probleme der Informatik sind mathematische Probleme. Sie müssen also die Lösung mathematischer Probleme verstehen, wenn Sie in der Welt der Informatik innovativ sein möchten.
Es gibt einige Eigenschaften für jeden Algorithmus, mit denen Sie konfrontiert sind:
- Endlichkeit: Ein Algorithmus kann unbegrenzt sein, aber die Schritte müssen beendet werden, dh die Anzahl der Schritte in einem Algorithmus ist immer endlich.
- Bestimmtheit: Bestimmtheit bedeutet: „Jeder Schritt muss sein richtig und genau definiert “.
- Eingabe oder Eingaben: Dies ist ziemlich selbsterklärend. Selbst wenn ein Algorithmus keine Eingabe akzeptiert, können wir ihn als 0 Eingabe bezeichnen.
- Ausgabe oder Ausgaben: Genau wie die Anzahl der Eingaben, außer dass ein Algorithmus mindestens eine Ausgabe haben muss.
Effektivität: Die an einem Algorithmus beteiligten Operationen müssen messbar sein, um die Effektivität oder Effizienz der verglichenen Algorithmen vergleichen zu können. Im Allgemeinen ist die Menge an Zeit und Raum, die ein Algorithmus einnimmt, ein angemessenes Maß für die Effizienz dieses Algorithmus.
Wenn Sie weitere Fragen haben, schreiben Sie eine Nachricht!
Bis zum nächsten Mal! Bleib in Sicherheit, pass auf dich auf!
zEzaz Akhtar!
Antwort
lerne zuerst eine Programmiersprache
Ich würde Python als bevorzugen guter Starter. Es ist einfach zu codieren und viele eingebaute Methoden sind enthalten. Verwenden Sie Python und beginnen Sie, Rätsel wie Rätsel auf der Hckerrank-Site zu lösen.
Die Verwendung von Algorithmen ist der einfachste Weg, sie zu verstehen.