Циклические списки - Большая Энциклопедия Нефти и Газа, статья, страница 1
Русский человек на голодный желудок думать не может, а на сытый – не хочет. Законы Мерфи (еще...)

Циклические списки

Cтраница 1


1 Циклический связанный список. [1]

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

3 Двусвязный список. [3]

Циклические списки также позволяют получить до ступ ко всему списку, начиная с любой позиции. Это придает списку некоторую симметрию. Программа может работать со всеми элементами списка одинаково.  [4]

Циклические списки можно использовать не только для представления структур, которым свойственна цикличность, но и для представления линейных структур.  [5]

Встроенные циклические списки удобно использовать при повторении части списка ввода-вывода, при передаче части массива или его элементов в последовательности, отличной от порядка возрастания индекса.  [6]

7 Пример использования указателей на порожденные и подобные узлы.| Пример использования указателей на порожденные, подобные и исходные записи. [7]

Следует отметить, что чаще используются двунаправленные циклические списки.  [8]

Таким образом, мы видим, что циклические списки можно использовать не только для представления структур, которым свойственна цикличность, но также для представления линейных структур; циклический список с одним указателем на последний узел, по существу, эквивалентен простому линейному списку с двумя указателями на начало и конец. В связи с этим наблюдением возникает естественный вопрос: Как найти конец списка, имея в виду круговую симметрию. Пустой связи Л, которая отмечает конец, не существует.  [9]

В описанном выше представлении памяти неявно предполагается, что атомарные узлы можно отличить от неатомарных узлов; более того, когда используются циклические списки или списки с двумя связями, желательно отличать головные узлы от узлов других типов, чтобы облегчить прохождение Списков. Поэтому каждый узел обычно содержит поле TYPE, которое говорит о типе информации, представленной в узле.  [10]

Существует еще много способов представления деревьев в памяти компьютера. Вспомним рассмотренные нами в § 2.2 три основных способа представления линейных списков: обычные однонаправленные списки с конечной связью Л, циклические списки и списки с двумя связями.  [11]

12 Примеры реализации способов уско - [ IMAGE ] Пример однонаправ-рения доступа к узлам линейного связанно - ленного циклического списка го списка. [12]

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

Передавать массивы или строки следует целиком, а не поэлементно. Это связано с тем, что каждый элемент списка ввода-вывода порождает свою собственную вызывающую последовательность машинных команд. Неэффективными конструкциями являются и циклические списки.  [14]

15 Список с подсписками. [15]



Страницы:      1    2