- Sedgewick, R. and Wayne, K. (2011) Algorithms (4th edition), Addison Wesley
EduSinglePage
Om kursen
Kursen syftar till att ge studenten förmåga att utveckla resurseffektiva program med hög prestanda genom att utnyttja gängse algoritmer och datastrukturer, samt modifiera och utöka dem vid behov. Vidare ska studenten kunna bedöma programs och algoritmers effektivitet genom matematisk analys, samt utnyttja bedömningen till att skapa effektiva program och till att avgöra om givna problem är hanterliga inom givna ramar.
Denna kursen ges som del av program:
Kursinnehåll
- Asymptotiska mått för algoritmers tids- och utrymmeskomplexitet.
- Grundläggande datastrukturer såsom array, stack, länkad lista, kö och träd, och deras betydelse för datorprograms prestanda och resursutnyttjande.
- Sökdatastrukturer såsom hashtabeller, sökträd och prioritetsköer.
- Effektiva sorteringsalgoritmer, deras egenskaper och lämplighet beroende på sammanhang.
- Användning av problemlösningstekniker såsom rekursion, söndra och härska, giriga algoritmer och uttömmande sökning.
- Beräkningsbarhet och komplexitetsklasser såsom P och NP
Behörighetskrav
- CD100A: Imperativ programmering (7,5 hp)
- Utöver de formella förkunskapskraven förutsätts att studenten har kunskaper från kurserna CD102A: Objektorienterad programmering (7,5 hp) och CM103A: Diskret matematik (7,5 hp)
Kurslitteratur
Kursvärdering
Malmö universitet ger studenter som deltar i eller har avslutat en kurs en möjlighet att framföra sina erfarenheter av och synpunkter på kursen genom en kursvärdering som anordnas av lärosätet. Universitetet sammanställer kursvärderingarna samt informerar om resultaten och eventuella beslut om åtgärder som föranleds av kursvärderingarna. Resultaten ska hållas tillgängliga för studenterna. (HF 1:14).