Kursusansvarlig
Hjælpelærere
Øvelser Torsdag kl. 08:00 til 10:00 i bygning 210 (lokale: se ovenfor), og efter forelæsningen (ca. 11:15 til 12:00) i holdområderne i bygning 116.
Forelæsning Torsdag 10.15-11.15, bygning 116 auditorium 81 (det store auditorium).
Bog "Introduction to Algorithms", 3rd edition (CLRS), Cormen, Leierson, Rivest, and Stein + evt. noter.
Supplerende materiale "Competitive Programmer's Handbook" (CSES), Chap. 11-15, Laaksonen. Links: Javaversionen og Pythonversionen. Flere sprog på bogens hjemmeside.
CodeJudge Implementationsopgaver afleveres i CodeJudge.
Relaterede kurser Kurset følger samme format som civilingeniørkurset 02105 Algorithms and Data Structures; vi dækker samme emner i samme rækkefølge, og vi benytter samme ugentlige opgaver.
Screencasts Se søsterkurset 02105 for screencasts af udvalgte emner (på engelsk).
Ugeplanen bliver opdateret løbende. Slides bliver lagt op løbende.
| Uge | Emne | Slides | Ugeplan | Materialer |
|---|---|---|---|---|
| Opvarmning: Forberedelse, programmeringsforudsætninger, gåder. | Warmup
^undtagen opg 3.3 |
Programming Prerequisites | ||
| Grundlæggende koncepter I: Introduktion, algoritmer, datastrukturer, toppunkter. | 1x1 | Introduktion | CLRS chap. 1 | |
| Grundlæggende koncepter II: Søgning og sortering. | 1x1 | Søgning og sortering | CLRS chap. 2 | |
| Grundlæggende koncepter III: Kompleksitet, asymptotisk notation, empirisk analyse. | 1x1 | Analyse af algoritmer | CLRS chap. 3 | |
| Datastrukturer I: Stakke, køer, hægtede lister, træer | 1x1 | Introduktion til datastrukturer | CLRS intro to part III + chap. 10 | |
| Grafalgoritmer I: Urettede grafer, repræsentationer, søgning, modellering. | 1x1 | Introduktion til grafer | CLRS intro to part VI + chap. 22.1-22.4 + appendix B.4-B.5. | |
| Grafalgoritmer II: Rettede grafer, topologisk sortering, implicitte grafer | 1x1 | Rettede grafer | CLRS intro to part VI + chap. 22.1-22.4 + appendix B.4-B.5. | |
| Datastrukturer II: Prioritetskøer, hobe. | 1x1 | Prioritetskøer og hobe | CLRS chap. 6 + appendix B.5 | |
| Datastrukturer III: Foren-og-find, dynamiske sammenhængskomponenter. | 1x1 | Foren og find | CLRS chap. 21 except 21.4 + Algorithms, 4ed. chap. 1.5 | |
| Grafalgoritmer III: Mindste udspændende træer, Prims algoritme, Kruskals algoritme | 1x1 | Mindste udspændende træ | CLRS chap. 23. | |
| Grafalgoritmer IV: Dijkstras algoritme, korteste veje i vægtede grafer, korteste veje i acykliske rettede grafer | 1x1 | Korteste veje | CLRS chap. 24 except 24.1 and 24.4. | |
| Datastrukturer IV: Dynamiske mængder, hashing. | 1x1 | Hashing | CLRS chap. 11 except 11.5. Videre læsning (udenfor pensum), se også: noter om hashing |
|
| Datastrukturer V: Træalgoritmer, forgængerproblemet, binære søgetræer. | 1x1 |
Binære søgetræer Binary Search Trees |
CLRS chap. 12 except 12.4. | |
| Afslutning og spørgetime. | Eksamenssæt 2015 |
| BEng |
|---|
| 02326-2014 |
| 02326-2015 |
| 02326-2017 |
| 02326-2018 |
| 02326-2019 |
| 02326-2022 |
Hvad betyder "Giv en algoritme"? Find en effektiv algoritme, beskriv den klart og koncist, argumenter for korrekthed og analyser dens køretid. Med mindre andet er angivet, menes naturligt sprog og ikke pseudokode.
Foregår undervisningen fysisk eller på zoom? Undervisningen foregår fysisk på Lyngby Campus.
Hvilket sprog foregår undervisningen på? Forelæsningerne er på dansk.
Hvad skal jeg forberede til næste uge? Inden torsdag morgen i kursets n'te uge forventes du at have løst opgaverne på ugesedl nr. (n-1) og læst materialet til uge nr. n. Første uge er uge nr 1.
Hvor og hvornår er eksamen? Se DTUs eksamensskema.
Må jeg følge kurset som civilingeniørstuderende? Det kan give problemer med studieordningen. Følg hellere 02105. Omvælg hurtigst muligt i studieplanlæggeren.