В книге обсуждаются алгоритмы решения наиболее распространенных классов задач: поиск и сортировка, численные алгоритмы и алгоритмы на графах. Особое внимание уделено алгоритмам параллельной обработки, редко освещаемым в литературе на русском языке. Второе оригинальное издание дополнено материалом о конечных и магазинных автоматах, контекстно-свободных грамматиках и машине Тьюринга. Новая глава о рекурсивных алгоритмах содержит обсуждение аппроксимации порядка роста рекуррентных соотношений. Изложение неформальное и чрезвычайно подробное, с большим количеством упражнений, позволяющих вести самоконтроль. Книга нужна всем, кому приходится самостоятельно писать программы — от студентов до программистов банковских систем и научных работников.