Информация о книге

5-279-02775-8

Главная  » Научно-техническая литература » Информационные технологии. Компьютеры » Программирование » С, С++, C# » Структуры и алгоритмы обработки данных. Примеры на языке Си: Учебное пособие

Хусаино Б.С., Структуры и алгоритмы обработки данных. Примеры на языке Си: Учебное пособие

Финансы и статистика, 2004 г., 464 стр., 5-279-02775-8 , 205*144*24 мм., тираж: 3000


Описание книги

Рассмотрены структуры данных, их представление и алгоритмы обработки, без знания которых невозможно современное компьютерное программирование. Приведены различные алгоритмы для работы с очередями, стеками, списками, деревьями, таблицами, графами. Подробно описаны алгоритмы внутренней и внешней сортировки и поиска данных в таблицах. Алгоритмы большинства операций над структурами доведены до программной реализации в виде функций на языке Си. Имеется множество программ. Для студентов вузов, обучающихся по направлению и специальностям программного обеспечения вычислительной техники и автоматизированных систем, прикладной математики и обработки информации; будет полезно аспирантам и широкому кругу специалистов по компьютерным наукам.

Ключевые слова

Рекомендации

Рекомендовано Учебно-методическим объединением вузов по университетскому и политехническому образованию.

Поделиться ссылкой на книгу



Содержание книги

ПРЕДИСЛОВИЕ
Глава 1. СТРУКТУРЫ ДАННЫХ И СТРУКТУРЫ ХРАНЕНИЯ
1.1. Алгоритмы и данные
1.2. Типы данных
1.3. Структуры хранения данных
1.3.1. Вектор
1.3.2. Список
1.3.3. Сеть
1.4. Массивы
1.4.1. Структуры данных массивов
1.4.2. Структуры хранения массивов
1.4.3. Свободные массивы
1.4.4. Треугольные и разреженные матрицы
1.4.5. Особенности использования массивов в языке Си
1.5. Строки и операции над ними
1.6. Записи и операции над ними
1.7. Множества
1.7.1. Множества в математике
1.7.2. Множества в языках программирования
1.7.3. Множество как обобщенное понятие структур данных
Упражнения
Глава 2. ЛИНЕЙНЫЕ СТРУКТУРЫ ДАННЫХ
2.1. Стеки
2.1.1. Структуры стека
2.1.2. Операции над стеками
2.1.3. Применение стеков при разработке приложений
2.2. Очереди
2.3. Деки
2.4. Операции над линейными списками
2.5. Программа для работы со списками 130 Упражнения
Глава 3. НЕЛИНЕЙНЫЕ СТРУКТУРЫ ДАННЫХ
3.1. Рекурсии
3.2. Общие сведения о деревьях
3.3. Представление m-арного дерева бинарным деревом
3.4. Леса
3.5. Представление деревьев в памяти ЭВМ
3.6. Идеально сбалансированное бинарное дерево
3.7. Бинарные (двоичные) деревья поиска
3.8. Сбалансированные деревья поиска
3.8.1. Сбалансированные АВЛ-деревья поиска
3.8.2. Рандомизированные деревья поиска
3.9. Оптимальные деревья поиска
3.10. Операции над деревьями
3.11. Программа для работы с бинарными деревьями
3.12. Особенности крупномасштабных деревьев
3.13. 5-деревья
3.14. Особенности операций над Д-деревьями
3.15. Разновидности Д-дерева
3.16. Программа для работы с Д-деревом 203 Упражнения
Глава 4. АЛГОРИТМЫ РЕШЕНИЯ ЗАДАЧ ВЫБОРА
4.1. Способы решения задач
4.2. Применение рекурсий
4.3. Дерево решений
4.4. Переборные задачи
4.5. Алгоритмы с возвратом
4.6. Метод ветвей и границ
4.7. Метод проб и ошибок
4.8. Динамическое программирование
4.9. Алгоритмы сжатия данных
Упражнения
Глава 5. СОРТИРОВКА ДАННЫХ
5.1. Общие понятия
5.2. Внутренняя сортировка
5.2.1. Сортировка методом прямого включения
5.2.2. Сортировка методом прямого выбора
5.2.3. Сортировка методом прямого обмена (сортировка методом пузырька)
5.2.4. Шейкерная сортировка
5.3. Быстрые (улучшенные) методы сортировки
5.3.1. Метод Шелла
5.3.2. Сортировка с помощью дерева (пирамиды)
5.3.3. Быстрая сортировка Хоара (сортировка разделением)
5.4. Поразрядная («карманная») сортировка
5.5. Порядковые статистики
5.6. Внешняя сортировка (сортировка последовательностей)
5.6.1. Особенности внешней сортировки
5.6.2. Прямое слияние
5.6.3. Естественное слияние
5.6.4. Сбалансированное многопутевое слияние
5.6.5. Многофазная сортировка
5.6.6. Формирование и распределение начальных серий
Упражнения
Глава 6. ТАБЛИЧНЫЕ СТРУКТУРЫ
6.1. Виды таблиц
6.2. Условия поиска
6.3. Линейные таблицы
6.3.1. Поиск в неупорядоченных таблицах
6.3.2. Поиск в упорядоченных таблицах
6.3.3. Некоторые рекомендации по работе с линейными таблицами
6.4. Логически связанные таблицы
6.5. Древовидные таблицы
6.5.1. Сравнение табличной и древовидной структур
6.5.2. Представление древовидной таблицы
6.5.3. Основные операции и возможная структура древовидной таблицы
6.5.4. Пример программы для работы с древовидной таблицей
6.6. Таблицы с вычисляемыми входами
6.6.1. Понятие таблицы с вычисляемыми входами
6.6.1. Выбор функции расстановки
6.6.3. Разрешение коллизий методом цепочек
6.6.4. Методы открытой адресации
6.6.5. Особенности алгоритмов удаления записей из таблицы
6.6.6. Переразмещение (рехеширование) таблицы
Упражнения
Глава 7. ФАЙЛЫ
7.1. Общие сведения
7.2. Последовательные файлы
7.3. Библиотечные файлы
7.4. Файлы прямого доступа
7.5. Индексно-последовательные файлы
7.6. Файлы VSAM
7.7. Файлы в MS DOS
7.8. Файлы NTFS
7.9. Работа с файлами в Си
7.9.1. Ввод-вывод потока
7.9.2. Ввод-вывод нижнего уровня
7.9.3. Пример программы работы с файлом
Упражнение
Глава 8. АЛГОРИТМЫ НА ГРАФАХ
8.1. Основные определения
8.2. Представление графов
8.2.1. Матрица смежности
8.2.2. Векторы смежности
8.2.3. Списки смежности
8.2.4. Матрица инцидентности
8.3. Пути в графе
8.4. Путевая матрица (матрица достижимости)
8.5. Минимальная путевая матрица
8.6. Кратчайшие пути
8.6.1. Алгоритм Дейкстры
8.6.2. Алгоритм Флойда
8.7. Остовные деревья графа
8.8. Обходы графов. Поиск в глубину и поиск в ширину
8.9. Остовное дерево наименьшей стоимости (минимального веса)
8.9.1. Алгоритм Прима
8.9.2. Алгоритм Крускала
8.10. Упорядочение графа (топологическая сортировка)
Упражнения
ПРИЛОЖЕНИЕ
ЛИТЕРАТУРА


Об авторе


Последние поступления в рубрике "С, С++, C#"



Справочник программиста по C/C++ Справочник программиста по C/C++ Шилдт Г.

Герберт Шилдт, легендарный автор книг по программированию, столь умело выделил основные элементы языков С и C++ и организовал их в таком удобном формате, что вы быстро и легко найдете ответы на все свои вопросы по программированию на С и C++. В......

C++ для инженерных и научных расчетов. Руководство C++ для инженерных и научных расчетов. Руководство Готтшлинг П.

С развитием вычислительной техники научные и инженерные проекты становятся все более крупными и сложными, и все более вероятно, что все новые проекты будут разрабатываться на C++. По мере того, как встраиваемое аппаратное обеспечение становится все......

C# 8.0. Скорая помощь для программистов на C# 8.0. Карманный справочник C# 8.0. Скорая помощь для программистов на C# 8.0. Карманный справочник Албахари Д.

Когда вам нужны ответы на вопросы по программированию на языке С# 8.0, этот узкоспециализированный справочник предложит именно то, что необходимо знать — без всяких длинных введений или раздутых примеров. Легкое в чтении и идеальное в качестве......

Если Вы задавались вопросами "где найти книгу в интернете?", "где купить книгу?" и "в каком книжном интернет-магазине нужная книга стоит дешевле?", то наш сайт именно для Вас. На сайте книжной поисковой системы Книгопоиск Вы можете узнать наличие книги Хусаино Б.С., Структуры и алгоритмы обработки данных. Примеры на языке Си: Учебное пособие в интернет-магазинах. Также Вы можете перейти на страницу понравившегося интернет-магазина и купить книгу на сайте магазина. Учтите, что стоимость товара и его наличие в нашей поисковой системе и на сайте интернет-магазина книг может отличаться, в виду задержки обновления информации.