Algorithmen

Wir haben haben uns mit den Professoren Tom Cormen und Devin Balkcom vom Dartmouth College zusammengetan um eine Einführung in die Algorithmen-Theorie inklusive Suchalgorithmen, Sortierung, Rekursion und Graphentheorie zu lehren. Lerne durch eine Kombination aus Artikeln, grafischen Darstellungen, Übungsaufgaben und Programmierchallenges.

Was sind Algorithmen und warum sollten sie uns interessieren? Wir beginnen mit einem Überblick über Algorithmen und diskutieren anschließend über zwei Spiele, mit denen man einen Algorithmus effizienter lösen kann - ein Ratespiel mit Nummern und ein Routensuche-Spiel.

Lerne etwas über die Binärsuche, ein effizienter Weg um ein Array von Elementen zu durchsuchen indem der Suchraum jedes Mal halbiert wird.

Lerne wie man die asymptotische Analyse verwendet um die Effizienz eines Algorithmus zu beschreiben und wie die asymptotische Notation (O-Symbol, Theta und Omega) verwendet wird um die Effizient genauer zu beschreiben.

Lerne Insertionsort, einen weiteren (aber nicht sehr effizienten) Algorithmus, um ein Array von Werten zu sortieren.

Lerne Mergesort, einen effizienteren Sortieralgorithmus, der stark auf Rekursion aufbaut, um Sub-Arrays wiederholt zu sortieren und wieder zusammenzuführen.

Lerne Quicksort, einen weiteren effizienten Sortieralgorithmus, der Rekursion verwenden, um ein Array von Werten schneller zu sortieren.

Lerne wie man Graphen mit ihren Kanten, Ecken und Beträgen beschreibt und lerne verschiedene Möglichkeiten kennen wie man Graphen mit Kantenlisten Adjazenzmatrizen und Adjazenzlisten speichert.

Lerne wie man mit der Breitensuche einen Graphen durchläuft, indem man immer nur eine Ebene besucht, um einen bestimmten Knoten zu finden oder sicherzustellen, dass alle Knoten besucht wurden.

Vorschläge wie du deine Reise in die Welt der Algorithmen fortsetzen kannst.