Книги: [Классика] [Базы данных] [Internet/WWW] [Сети] [Программирование] [UNIX] [Windows] [Безопасность] [Графика] [Software Engineering] [ERP-системы] [Hardware]
|
| Алгоритмы: построение и анализ
Кормен Т., Лейзерсон Ч., Ривест Р.
Издано: 2000, Центр непрер.матем. образ-я
ISBN: 5900916375
Твердый переплет, 960 стр.
Формат: 84x108 1/16
Полное оглавление
Начало
|
Предисловие
Эта книга рассказывает о современных методах построения и анализа алгоритмов. В ней подробно разобрано много конкретных алгоритмов; мы старались рассказать о них понятно, но не опуская деталей и не жертвуя строгостью изложения.
Алгоритмы записаны в виде "псевдокода" и прокомментированы в тексте; мы старались сделать описание алгоритма понятным людям с минимальным программистским опытом. Книга содержит более 260 рисунков, поясняющих работу различных алгоритмов. Мы обращаем особое внимание на эффективность рассматриваемых алгоритмов и приводим оценки времени их работы.
Мы старались написать учебник по построению алгоритмов и структур данных, который могли бы использовать преподаватели и студентыот первокурсников до аспирантов. Книга может быть использована и для самообразования профессиональных программистов.
Преподавателям:
Мы старались сделать возможным использование книги на разных уровнях - от начального курса по программированию и структурам данных до аспирантского курса по эффективным алгоритмам. В ней гораздо больше материала, чем можно включить в семестровый курс, так что вы можете выбрать главы по вкусу.
Мы старались сделать главы достаточно независимыми. Каждая глава начинается с более простого материала; более трудные темы отнесены в разделы, помеченные звёздочкой и помещённые в конец главы. В лекциях для начинающих можно ограничиться несколькими первыми разделами выбранных вами глав, оставив подробное изучение остальных для более продвинутого курса.
Каждый раздел снабжён упражнениями (всего их более 900): каждая глава заканчивается задачами (всего более 120). Как правило, упражнения проверяют понимание изложенного материала (часть из них-устные вопросы, часть подходят для письменного домашнего задания). Задачи более развёрнуты; многие из них дополняют теоретический материал соответствующей главы и разбиты на части, соответствующие этапам доказательства или построения.
Звёздочкой отмечены более трудные упражнения и разделы; они предназначены скорее для старшекурсников и аспирантов. Разделы со звёздочкой часто требуют лучшей математической подготовки; упражнение со звёздочкой может также требовать дополнительных знаний или просто быть более трудным.
Студентам:
Мы надеемся, что книга доставит вам удовольствие и познакомит с методами построения алгоритмов. Мы старались писать подробно, понятно и интересно, напоминая по ходу дела необходимые сведения из математики. Подготовительные сведения обычно собраны в начальных разделах главы, которые можно бегло просмотреть, если вы уже знакомы с темой.
Книга эта велика, и на лекциях, скорее всего, будет разобрана лишь часть материала. Мы надеемся, что оставшаяся часть пригодится вам в будущем, поэтому советуем сохранить книгу в качестве справочника.
Что нужно знать, приступая к чтению? Мы рассчитываем, что вы имеете некоторый программистский опыт, и рекурсивные процедуры, массивы и списки вас не пугают; простые математические рассуждения (скажем, доказательства по индукции) вам также знакомы (кое-где понадобятся отдельные факты из курса математического анализа; в первой части больше ничего из математики не потребуется).
Программистам:
В книгу включены алгоритмы для самых разных задач и её можно использовать как справочник. Главы почти независимы, так что можно сразу выбрать интересующий вас материал.
Большинство обсуждаемых алгоритмов вполне могут быть использованы на практике, и мы уделяем должное внимание деталям реализации. Если алгоритм представляет скорее теоретический интерес, мы отмечаем это и обсуждаем альтернативные подходы.
Наш псевдокод легко перевести на любой язык программирования, если это понадобится. Надо только иметь в виду, что мы не включаем в алгоритмы системно-зависимые фрагменты (обработку ошибок и т.п.), чтобы не затемнять сути дела.
Начало
Полное оглавление