АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Формирование односвязного списка

Читайте также:
  1. E) формирование правительства из членов партии, располагающих большинством мест в Парламенте
  2. Б) Формирование отечественной социологии права в советский период
  3. Басня изучается в жанровой специфике, образовательный процесс направлен на формирование системы читательских умений
  4. Библиографического списка
  5. Виды психологической помощи в семье: информирование, психологическое консультирование, консультирование супружеских пар, групповое семейное консультирование.
  6. Вопрос №56. Формирование и строение проростков у однодольных и двудольных растений.
  7. Государство, власть и общество в первой трети XVI в.: формирование сословной системы.
  8. Диспетчерское руководство расформированием-формированием поездов
  9. ИВАН IV ГРОЗНЫЙ: ФОРМИРОВАНИЕ СОСЛОВНО-ПРЕДСТАВИТЕЛЬНОЙ МОНАРХИИ; РЕФОРМЫ 50-60 ГОДОВ XVI В. ОПРИЧНИНА.
  10. Информирование и эвакуация населения
  11. Какое формирование СМК предназначено для проведения дезинфекционных
  12. Лекция 4. Тема: «Формирование МИС предприятия, ориентированного на международный рынок»

Как правило, элементы связанного списка являются структурами, так как, помимо данных, они содержат ссылку на следующий элемент. Поэтому необходимо определить структуру:

struct List

{

int info;//информационная часть

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

};

В приведенном примере информационная часть представляет собой одну целочисленную переменную (info), которая имеет тип int. Списки с элементами других типов описываются аналогично.

Пример. Список символов (‘a’,’b’,’c’), состоит из трех элементов. Первый элемент в этом списке – ‘a’, второй – ‘b’, третий – ‘c’. Представление этого списка стеком изображается на рис. 1, очередью – на рис. 2.

Рис.1 – Стек из трех элементов

Рис. 2 – Очередь из трех элементов

 

При этом в программе выражение pbeg означает указатель на первое звено в цепочке; * pbeg означает само первое звено, (* pbeg). info — первый элемент списка. По-другому первыйэлемент обозначается с помощью операции доступа к члену структуры через указатель: pbeg −> info. Выражение pbeg −> next означает указатель на второе звено. Далее,

*pbeg−>next — само второе звено,

pbeg−>next−>info — второй элемент списка,

pbeg−>next−>next — указатель на третье звено,

*pbeg–>next−>next — само третье звено,

pbeg−>next−>next−>info — третий элемент списка,

pbeg−>next−>next−>next — пустой указатель (конец списка).

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

 


1 | 2 | 3 | 4 | 5 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)