presentera och diskutera kursens innehåll muntligt och skriftligt med för utbildningsnivån lämplig färdighet.
Kursinnehåll
Introduktion till programmering: syftet med programmering, programmeringsprocessens faser, programmering satt i sitt sammanhang genom exempel på tillämpningar, kort historik över programmering, datorsystemet ur programmerarens synvinkel, programmeringsmiljöer.
Algoritmer: vad en algoritm är, programmet som realisering av en algoritm, skillnaden i preciseringsgrad mellan datorprogram och vardagslivets algoritmer.
Algoritmer för sökning (binära sökträd, balanserade sökträd, hashtabeller) och sortering (insättningssortering, merge sort, quick sort, heap sort). Enkla grafalgoritmer (djup-först och bredd-först sökning, topologisk sortering, komponenter).
Matematiska grunder för algoritmanalys: asymptotisk notation, summationer, rekursionsformler.