
Basic Concepts in Algorithms
Tato kniha je výsledkem několika desetiletí zkušeností s výukou datových struktur a algoritmů. Je samostatná, ale předpokládá určité předchozí znalosti datových struktur a znalost základních programovacích a matematických nástrojů.
Základní pojmy v algoritmech se zaměřuje na pokročilejší paradigmata a metody kombinující základní programovací konstrukce jako stavební kameny a jejich užitečnost při odvozování algoritmů. Zahrnuje proces návrhu algoritmů a analýzu jejich výkonnosti. Je určena především jako učebnice pro výuku algoritmů pro studenty druhého ročníku bakalářského studia oborů souvisejících s počítači a programováním.
Klein písemně reprodukuje svůj ústní styl výuky, kdy jedno téma vede k dalšímu, příbuznému. Většina klasických a některá pokročilejší témata z teorie algoritmů jsou zde zahrnuta, i když ne komplexně.
Mezi témata patří Rozděl a panuj, dynamické programování, grafové algoritmy, pravděpodobnostní algoritmy, komprese dat, numerické algoritmy a obtížná řešitelnost. Každá kapitola je opatřena vlastním souborem cvičení a k většině z nich jsou připojena řešení.