# M411 - Datenstrukturen und Algorithmen entwerfen und anwenden [> **Modulidentifikation** ](https://www.modulbaukasten.ch/modul/bc75c9da-716c-eb11-b0b1-000d3a830b2b) - [docs](./docs/) - [docs/Skripte_Aufgaben_Tasks](./docs/Skripte_Aufgaben_Tasks/) - [docs/Videos-Tutorials-Anleitungen](./docs/Videos-Tutorials-Anleitungen) ## Aufträge & Übungen | Tag | Titel | Auftrag, Übung, Themen | | ---- | ------ | -------------- | | 1 | First steps | Modulvorstellung
[what is an algorithm](./1a)
[what are data structures](./1b)
[first steps I (classes, main-methode)](./1c) | | 2 | Arrays | Erste Schritte II / Benutzereingaben lesen (Scanner) / Files lesen und ausgeben (BufferedReader)
Mit Arrays arbeiten
- Elemente füllen, leeren, suchen, verändern
- Sortieren (BubbleSort) | | 3 | Linked Lists | Fortsetzung Arrays
Verkettete Liste (selber gebaut) | | 4 | Sort, Stack, Queue | Sort-Algorithmen vergleichen
- BubbleSort <-> QuickSort
- BubbleSort <-> ??Sort (nach Wahl) inkl. Schnelligkeitsmessung
- Stack & Queue (FIFO, LIFO, LILO, FILO) | | 5 | _**LB1** (30% MN, >> runtime behaviour on different sorts)_
| Arrays, LinkedLists, BubbleSort, Stacks (Push/Pop), Queues | | 6 | Hashmaps, Recursions | - Hashmaps,
- Recursions | | 7 | _**LB2** (30% MN, >> hashMaps and rekursions)_ | - Trees and graphs
- Dijkstra-Algorithm (route planner) | | 8 | _**LB3** (40% MN, >> START mini project)_ | - search and decide projekt
- work on mini project | | 9 | Work on mini project | | | 10 | Close mini project | Abgabe/Vorstellung bei LP |