4970

Сравнение однонаправленного и двунаправленного списка

Реферат

Информатика, кибернетика и программирование

Списки Список – линейная структура, каждый элемент которой содержит адрес соседних элементов. Различают однонаправленные и двунаправленные списки. В однонаправленном списке каждый элемент содержит адрес следующего элемента. В двунаправленном сп...

Русский

2012-11-30

65.03 KB

22 чел.

Списки

Список – линейная структура, каждый элемент которой содержит адрес соседних элементов. Различают однонаправленные и двунаправленные списки.

В однонаправленном списке каждый элемент содержит адрес следующего элемента. В двунаправленном списке каждый элемент содержит адреса предыдущего и последующего элементов.

Однонаправленный список

Рассмотрим более подробно однонаправленный список.

Каждый элемент списка состоит из содержательной части и служебной части.

Содержательная часть имеет в своем составе элементы данных, которые характеризуют свойства элемента списка.

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

Сравнение однонаправленного и двунаправленного списка

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

Сравнение списка и массива указателей

Принцип упорядочения элементов в списке принципиально отличается от принципа упорядочения элементов в массиве указателей.

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

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

Описание списка на языке Си++

Для описания списка на языке Си++ необходимо описать два класса:

класс элемента списка и класс списка.

 В классе элемента списка должны находиться переменные для описания свойств объектов класса и указатель на следующий элемент.

В классе самого списка должны находиться указатель на начало списка и число элементов

Рассмотрим пример разработки класса списка людей.

Вначале необходимо создать класс Человек PersonElem.

Затем следует создать класс PeopleList


 

А также другие работы, которые могут Вас заинтересовать

49784. Монтаж строительных конструкций. Расчет конструкций 711.5 KB
  Расстояние перебазирования монтажного крана 10 км. Для монтажа заданного одноэтажного промышленного здания принимаем следующие методы и способы монтажа: 1 по степени укрупнения сборных конструкций – монтаж отдельными элементами и укрупненными блоками; 2 по способу подачи и установки конструкций – метод наращивания; 3 в зависимости от направления движения крана при монтаже – продольный метод; 4 по последовательности установки сборных конструкций – дифференцированный метод при установке колонн комплексный метод при монтаже конструкций...
49785. Построение и исследование имитационной модели 1.27 MB
  В системе интервалы времени между поступлением требований являются независимыми случайными величинами со средним временем. Среднее значение времени обслуживания требований. Оценке подлежат следующие параметры: коэффициент использования системы ; средняя задержка в очереди ; среднее время ожидания ; среднее по времени число требований в очереди ; среднее по времени число требований в системе . График по времени числа требований в очереди.
49786. Разработка оснований и фундаментов промышленного цеха и административно-бытового корпуса 1.73 MB
  Определение размеров подошвы фундамента Расчет осадки основания фундамента Расчет элементов фундамента по прочности Конструирование фундамента
49787. Визуализация численных методов. Решение обыкновенных дифференциальных уравнений 124 KB
  Числовые методы позволяют построить интегральную кривую по точкам. В зависимости от того, сколько точек используется для расчета очередной точки интегральной кривой, все численные методы делятся на одношаговые и многошаговые. В нашем случае мы используем одношаговые численные методы.
49788. Визуализация численных методов. Решение обыкновенных дифференциальных уравнений 10.19 MB
  Дифференциальными называются уравнения, связывающие независимую переменную, искомую функцию и ее производные. Решением ДУ называется функция, которая при подстановке в уравнение обращает его в тождество. Лишь очень немногие из таких уравнений удается решить без помощи вычислительной техники.
49789. Решение методами Эйлера и Эйлера модифицированным задачу Коши для дифференциального уравнения первого порядка на отрезке с шагом и начальным условием 268 KB
  В данной работе поставлена задача решить дифференциальное уравнение с помощью двух методов: метода Эйлера и метода Эйлера модифицированного. Требуется написать программу на языке Visual Basic для решения и визуализации данного дифференциального уравнения первого порядка при помощи графика. В программе будут сравниваться эти методы и оценятся погрешности и правильность решения.
49791. ПРОЕКТИРОВАНИЕ ПРИВОДА 582.5 KB
  Требуемая мощность кВт электродвигателя привода определяем по формуле: где Рв потребляемая мощность измельчителя Здесь КПД отдельных звеньев кинематической цепи значения которых принимаем по табл.13 тогда SH – коэффициент запаса прочности принимаем в соответствии с рекомендациями...