Скачать книгу «Программирование в алгоритмах» бесплатно

  • Автор: Окулов
  • Издательство: БИНОМ. Лаборатория знаний
  • Год издания: 2004
  • Формат: PDF
  • Язык: Русский
Описание

Окулов раскрыл основы программирования на примере самых известных алгоритмов. Он рассмотрел ряд важных вопросов, такие как арифметика многоразрядных целых чисел, комбинаторные алгоритмы, алгоритмы на графах, деревья и многое другое. В пример приводится множество задач, которые помогут овладеть практическими знаниями.

Книга Окулова «Программирование в алгоритмах» будет полезна тем, кто желает заниматься программированием всерьез, кто готов пройти трудности в изучении вместе с автором, ведущим читателя постепенно от простого к сложному.

Содержание

Предисловие
1. Арифметика многоразрядных целых чисел
1.1. Основные арифметические операции
1.2. Задачи
2. Комбинаторные алгоритмы
2.1. Классические задачи комбинаторики
2.2. Генерация комбинаторных объектов
2.2.1. Перестановки
2.2.2. Размещения
2.2.3. Сочетания
2.2.4. Разбиение числа на слагаемые
2.2.5. Последовательности из нулей и единиц длины N без двух единиц подряд
2.2.6. Подмножества
2.2.7. Скобочные последовательности
2.3. Задачи
3. Перебор и методы его сокращения
3.1. Перебор с возвратом (общая схема)
3.2. Примеры задач для разбора общей схемы перебора
3.3. Динамическое программирование
3.4. Примеры задач для разбора идеи метода динамического программирования
3.5. Метод ветвей и границ
3.6. Метод «решета»
3.7. Задачи
4. Алгоритмы на графах
4.1. Представление графа в памяти компьютера
4.2. Поиск в графе
4.2.1. Поиск в глубину
4.2.2. Поиск в ширину
4.3. Деревья Содержание
4.3.1. Основные понятия. Стягивающие деревья
4.3.2. Порождение всех каркасов графа
4.3.3. Каркас минимального веса. Метод Дж. Краскала
4.3.4. Каркас минимального веса. Метод Р. Прима
4.4. Связность
4.4.1. Достижимость
4.4.2. Определение связности
4.4.3. Двусвязность
4.5. Циклы
4.5.1. Эйлеровы циклы
4.5.2. Гамильтоновы циклы
4.5.3. Фундаментальное множество циклов
4.6. Кратчайшие пути
4.6.2. Алгоритм Дейкстры
4.6.3. Пути в бесконтурном графе
4.6.4. Кратчайшие пути между всеми парами вершин. Алгоритм Флойда
4.7. Независимые и доминирующие множества
4.7.1. Независимые множества
4.7.2. Метод генерации всех максимальных независимых множеств графа
4.7.3. Доминирующие множества
4.7.4. Задача о наименьшем покрытии
4.7.5. Метод решения задачи о наименьшем разбиении
4.8. Раскраски
4.8.1. Правильные раскраски
4.8.2. Поиск минимальной раскраски вершин графа
4.8.3. Использование задачи о наименьшем покрытии при раскраске вершин графа
4.9. Потоки в сетях, паросочетания
4.9.1. Постановка задачи
4.9.2. Метод построения максимального потока в сети
4.9.3. Наибольшее паросочетание в двудольном графе
4.10. Методы приближенного решения задачи коммивояжера
4.10.1. Метод локальной оптимизации
4.10.2. Алгоритм Эйлера
4.10.3. Алгоритм Кристофидеса
4.11. Задачи
5. Алгоритмы вычислительной геометрии
5.1. Базовые процедуры
5.2. Прямая линия и отрезок прямой
5.3. Треугольник
5.4. Многоугольник
5.5. Выпуклая оболочка
5.6. Задачи о прямоугольниках
5.7. Задачи
6. Избранные олимпиадные задачи по программированию
7. Заметки о тестировании программ
7.1. О программировании
7.2. Практические рекомендации
7.3. Тестирование программы решения задачи (на примере)
Библиографический указатель

Скачать "Программирование в алгоритмах. Окулов" :
Оставьте свое мнение (новые комментарии появляются примерно через час, после модерации)