Educational Cards

Learn from video content, text, and interactive tasks

Filters
Clear
Vergleiche und Vertauschungen

Analysiere getrennt: Vergleiche (Lesen) und Schreib-/Tauschkosten. Selection Sort: viele...

Intermediate Algorithmen und Datenstrukturen
Implementierung: naive Suche

Implementiere die naive Suche und gib den ersten Index oder -1 zurück. ## Wo gebraucht...

Intermediate Algorithmen und Datenstrukturen
Java String und indexOf

In Java sucht String.indexOf naiv oder mit JVM-Optimierungen. Für Lehre zählt der Algorithmus,...

Beginner Algorithmen und Datenstrukturen
KMP-Idee: Präfixfunktion

KMP vorberechnet eine longest-prefix-suffix-Tabelle (pi) für das Muster. Bei Mismatch springt der...

Intermediate Algorithmen und Datenstrukturen
Regex grob und Kosten

Regex sind mächtig, aber können backtracken und teuer werden. Für festes exaktes Muster sind KMP...

Intermediate Algorithmen und Datenstrukturen
Naive Textsuche

Naive Suche prüft für jede Textposition, ob das Muster passt. Bei Mismatch verschiebt sie um 1....

Beginner Algorithmen und Datenstrukturen
Komplexität der naiven Suche

Seien n Textlänge und m Musterlänge. Naive Suche ist O(n m) im Worst Case (z.B. aaaa... vs...

Intermediate Algorithmen und Datenstrukturen
Offene Adressierung grob

Offene Adressierung speichert Einträge in der Tabelle selbst und sucht bei Kollision alternative...

Intermediate Algorithmen und Datenstrukturen
Lastfaktor und Rehash

Der Lastfaktor ist n / Kapazität. Überschreitet er eine Schwelle, reallociert die Tabelle (Rehash):...

Beginner Algorithmen und Datenstrukturen
Kleine Implementierung: Bucketindex

Bucketindex aus hashCode und Tabellenlänge: typisch (hash & 0x7fffffff) % capacity oder bit...

Intermediate Algorithmen und Datenstrukturen
Hashing: Idee und Buckets

Hashing bildet Schlüssel auf Bucketindizes ab. Erwartete Zugriffszeit ist O(1), wenn die...

Beginner Algorithmen und Datenstrukturen
Kollisionen: Chaining

Chaining speichert kollidierende Einträge in einer Liste (oder einem Baum) pro Bucket. Einfügen...

Intermediate Algorithmen und Datenstrukturen