(Data Structures and Algorithms 1, 5 cr)
- Analyysin perusteet: * Algoritmien suunnittelu ja toteutusperiaatteista * aika- ja vaativuusanalyysi * paras, keskimääräinen, pahin tapaus * O, o, Omega, theta * kompleksisuusluokat * rekursiorelaatiot rekursiivisten alg. analyysissa (alustavasti) - Perustietorakenteet * Lista sukulaisineen * Puut * Joukot * Verkot (kevyesti) - Perusalgoritmeja * järjestämisalgoritmeista - (yksinkertaiset O(n^2) algoritmit (esim. kuplalajittelu) - pikalajittelu, kasalajittelu, lomituslajittelu, kaukalolajittelu aikavaativuuksineen * hajautus + törmäyksenvälttämisstrategiat - Perustietorakenteiden toteuttaminen