The main goal of this book is to give the reader a concise introduction to the basic paradigms in creating efficient algorithms: greedy algorithms, divide-and-conquer, dynamic programming, and network flow. The book was written for a course Algorithms, Data Structures, and Complexity, created by Professor Thore Husfeldt (thorehusfeldt.net), which the book's author was assigned to teach in Lund, and the selection of contents is to a large extent influenced by this course. Additional material include for instance Tarjan's algortihm for finding the strongly connected components of a directed graph. The book should be suitable for self study, especially if the reader solves thelaboratory exercises available from Professor Husfeldt's github page, as well as from the book's home page at concise-algorithms.netCompared with the classic introductory texts on algorithms, our aim is not to present an encyclopedia of algorithms but to give the reader, in as short reading time as possibleboth an understanding of the fundamental paradigms mentioned above, and knowledge about many classic algorithms, including the above mentioned Tarjan's algorithm which is not so frequently included in other text books.
Åtkomstkoder och digitalt tilläggsmaterial garanteras inte med begagnade böcker