Односвязные списки
Автор: Владимир Молибог • Октябрь 4, 2023 • Курсовая работа • 8,433 Слов (34 Страниц) • 139 Просмотры
МИНОБРНАУКИ РОССИИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ «ТУЛЬСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»
Институт прикладной математики и компьютерных наук
Односвязные и двусвязные списки
(тема курсовой работы)
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовой работе по дисциплине
Основы программирования_____________________________________
(полное наименование учебной дисциплины)
Студент гр. ______________ ______________ ______________ (индекс группы) (подпись и дата) (инициалы и фамилия)
Руководитель ______________ ______________ ______________ (должность и ученая степень) (подпись и дата) (инициалы и фамилия)
ТУЛА 2023
Оглавление
Введение 3
1. Постановка задачи 5
2. Описание входной и выходной информации 7
3. Алгоритм решения задачи 10
4. Общие требования к программе 11
6. Инструкции по эксплуатации программ 14
7. Описание контрольного примера 23
ЗАКЛЮЧЕНИЕ 25
Библиографический список 26
Приложения 27
Введение
Современный мир диктует свои тенденции в развитие методов программирования. Один из актуальных языков программирования на протяжении последних лет и по сей день является C++.
Адаптированный под пользователей, в данном случае для разработчиков, что позволяет назвать его удобным и является очень функциональным языком, с большим числом платформ для разработки, одной из самых популярных и мощных является «Microsoft Visual Studio С++», она и будет использована при выполнении данной работы.
В стандартную библиотеку C++ входит немало основных структур данных. Среди которых можно найти списки, стеки, очереди, множества и другие. Но чтобы эффективно пользоваться ими, необходимо хорошо представлять особенности их работы. В связи с этим актуальность данной тематики вызывает огромный интерес не только у специалистов, но и программистов различного уровня. Речь пойдет об одних из базовых структур: односвязном списке и двусвязном списках. Актуальность работы заключается в описании таких списков, которые являются объектами хранения данных.
Целью данной работы является написание программ, а именно программ по заданию 1 и 2:
- Пусть имеется текстовый файл. Используя линейный список, подсчитать число появлений каждого слова и создать новый текстовый файл, каждая строка которого имеет вид "<слово>–<число его появлений>". Слова должны располагаться в лексикографическом порядке.
- Написать функцию, которая по произвольному указателю на один из элементов двусвязного списка подсчитывает количество элементов в этом списке.
Необходимость хранения данных является основой любого языка программирования. Данное утверждение относится к языку С++. В С++ связный список предназначен для хранения данных. Например, в качестве структур для хранения данных, в языке используются массивы и массивы указателей на данные (в примерах PTRTOSTRS и PTROBJS). Эти структуры, как правило, имеют свои недостатки. Недостатком этих структур является необходимость объявлять фиксированное значение размера массива до запуска программы. Эта проблема решается с помощью введения новых типов структур, которые представляют собой списки. Именно списки дают возможность динамического расширения в памяти компьютера. Эта курсовая работа представляет собой документ, в задачи которого входят: описание принципов работы списков хранения данных, решение задач по программированию односвязных и двусвязных списков с последующей разработкой программ на С++.
...