Эта книга представляет собой один из выпусков очередных томов всемирно известной работы Искусство программирования, не нуждающейся ни в представлении, ни в рекламе. В данный выпуск вошли разделы четвертного тома, посвященные вопросам генерации всех сочетаний и разбиений. Материалы выпуска в будущем войдут в четвертый том серии, посвященный комбинаторным алгоритмам — возможно, с определенными дополнениями и исправлениями на основе отзывов читателей данного выпуска.
Оглавление
Предисловие 7
7 Комбинаторный поиск 9
7.2 Генерация всех возможных объектов 9
7.2.1 Генерация основных комбинаторных объектов 9
7.2.1.1 Генерация всех n-кортежей 9
7.2.1.2 Генерация всех перестановок 9
7.2.1.3 Генерация всех сочетаний 9
7.2.1.4 Генерация всех разбиений 52
7.2.1.5 Генерация всех разбиений множеств 83
Ответы к упражнениям 114
Предметный указатель
В учебнике изложены основные разделы дискретной математики и описаны важнейшие алгоритмы на дискретных структурах данных. Основу книги составляет материал лекционного курса, который автор читает в Санкт-Петербургском государственном техническом университете последние полтора десятилетия.
Эта книга, автором которой является опытный преподаватель информатики, представляет собой один из лучших учебников, посвященных алгоритмам. Делая основной упор на понимание идей, а не на механическое рассмотрение работы того или иного алгоритма, автор излагает ключевые принципы и методы разработки алгоритмов так, что они могут быть применены как универсальный инструментарий для широкого диапазона задач, а не только для разработки алгоритмов. Несмотря на отсутствие громоздких математических доказательств, в книге выдержана достаточная математическая строгость.