Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
KURSOVAYa-1.docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
342 Кб
Скачать
☆

Реферат

Пояснительная записка курсовой работы содержит 24 с., 9 рис., 4 источника, 1 приложение.

СПИСКИ, ДВУСВЯЗНЫЕ ЦИКЛИЧЕСКИЕ СПИСКИ,СТРУКТУРА ДАННЫХ, УЗЛЫ ЦИКЛИЧЕСКОГО СПИСКА.

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

Объектом исследования являются двусвязные циклические списки.

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

К полученным результатам относится класс, реализующий двусвязный циклический список и програма, демонстрирующая его работу.

Содержание

Введение 5

1 Постановка задачи 6

2 Описание методов решения 6

2.1 Двусвязный циклический список 6

2.2 Основные действия, производимые над узлами двусвязного циклического списка (ДЦС) 7

2.3 Стандартные функции для двусвязного списка 15

3 Описание реализации программы 17

4 Тестирование и результаты работы 22

Заключение 23

Список использованных источников 24

Приложение А. Исходный код программы 25

Введение

Двусвязный циклический список – список, при котором первый элемент является следующим для последнего элемента списка.

Исследование двусвязного циклического списка является актуальным, потому что имеет ряд преимуществ и во многом упрощает работу программы. Такими преимуществами являются:

  • добавление нового узла в определённую позицию,

  • удаление i-того элемента из последовательности,

  • просмотр списка в обоих направлениях.

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

1 Постановка задачи

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

2 Описание методов решения

2.1 Двусвязный циклический список

Связный список (англ. List) — структура данных, состоящая из элементов, содержащих помимо собственных данных ссылки на следующий и/или предыдущий элемент списка. С помощью списков можно реализовать такие структуры данных как стек и очередь.

Каждый узел двунаправленного (двусвязного) циклического списка (ДЦС) содержит два поля указателей - на следующий и на предыдущий узлы. Указатель на предыдущий узел корня списка содержит адрес последнего узла. Указатель на следующий узел последнего узла содержит адрес корня списка.

Рисунок1 – Узлы ДЦС и поля указателей

Узел ДЦС можно представить в виде структуры, аналогичной двусвязному линейному списку:

struct list {

int field; // поле данных

struct list *next; // указатель на следующий элемент

struct list *prev; // указатель на предыдущий элемент };

2.2 Основные действия, производимые над узлами двусвязного циклического списка (дцс)

Над узлами двусвязного циклического списка можно производить следующие действия:

  • Инициализация списка

  • Добавление узла в список

  • Удаление узла из списка

  • Вывод элементов списка

  • Вывод элементов списка в обратном порядке

  • Взаимообмен двух узлов списка

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]