
1. Informatik & Gesellschaft
1.1. Künstliche Intelligenz
1.2. Didaktik der Informatik
2. Theoretische Informatik
2.1. Automatentheorie & formale Sprachen
2.1.1. Chomsky-Hierarchie
2.1.1.1. kontextfreie Grammatik (Typ-2)
2.1.1.2. kontextsensitive Grammatik (Typ-1)
2.1.1.2.1. semi-entscheidbare Sprachen (Typ-0)
2.1.1.3. reguläre Grammatik (Typ-3)
2.2. Berechenbarkeitstheorie
2.2.1. Turingmaschinen
2.2.2. LOOP- & WHILE-Programme
2.2.3. Rekursive Programme
2.2.4. (Un-)Entscheidbarkeit
2.2.5. Komplexitätsklassen
2.3. Komplexitätstheorie
2.4. Logik
2.5. Informationstheorie
2.6. Kryptographie
3. Praktische Informatik
3.1. Entwicklung von Algorithmen und Datenstrukturen
3.1.1. Graphentheorie
3.1.1.1. Bäume
3.1.1.1.1. Kruskal-Algorithmus
3.1.1.2. Breiten- & Tiefendurchlauf
3.1.1.3. kürzeste Wege
3.1.1.3.1. Dijkstra-Algorithmus
3.1.1.3.2. Bellmann-Ford-Algorithmus
3.1.2. Kodierungstheorie
3.1.3. Such- & Sortierverfahren
3.1.4. strukturierte Programmierung
3.1.5. Flüsse
3.1.5.1. Ford-Fulkerson-Algorithmus
3.2. Entwicklung von Programmiersprachen
3.2.1. Maschinensprachen
3.2.1.1. objektorientierte Programmierung
3.2.2. imperative Programmierung
3.2.3. deklarative Programmierung
3.2.3.1. Abfragesprachen
3.2.3.1.1. SQL
3.2.3.2. Datenflusssprachen
3.2.3.3. funktionale Sprachen
3.2.3.4. logische Sprachen
3.2.3.4.1. Prolog
3.2.3.5. Transformationssprachen
3.3. Softwaretechnik
3.3.1. Assamblersprachen