Kursöversikt
Tidsplan
v03 Introduktion
Första veckan kommer handla om hur vi mäter tid och hur vi skriver en enkel rapport i LaTeX.
v04 Stackar
En stack är en mycket praktisk datastruktur där vi kan lägga saker som vi skall ta hand om senare.
v05 Sökning
Att söka efter ett element i en array tar tid men om elementen är sorterade så kan vi göra ett litet trick. Vi skall också titta närmare på ordo-begreppet.
V06 Sortering
Eftersom allt blir så mycket bättre om vi sorterar saker så är det bra att lära sig sortera på ett effektivt sätt.
V07 Länkade datastrukturer
Arrayer i all ära men det finns ett betydligt mer generellt sätt att bygga upp datastrukturer. Den enklaste strukturen är en länkad lista.
V08 Köer
Köer är som stacka fast tvärt om.
v09 Träd
Ett träd är ett mycket generellt sätt att ordna stora ordnade datamängder. Till skillnad från listor som har linjär tidskomplexitet så har träden en logaritmisk vilket förändrar situationen radikalt.
v10 Hashtabeller
Hashtabeller är standardstrukturen för att representera stora datamängder som skall göras åtkomliga via en unik nyckel. Till skillnad från arrayer så kan nyckeln vara nästan vad som helst, inte bar ett index. Vi har i det närmaste konstant tid för att hitta element när vi söker.
Tries är en mycket speciell struktur som är något mellanting mellan hashtabeller och träd.
v11 Grafer
Nu börjar det bli riktigt roligt. Hur svår kan det vara att hitta snabbaste vägen mellan Malmö och Umeå ... (mycket svårt).