2016-06-22 2 views
2

Я не уверен, какой «список» можно рассматривать как «линейный список».Является ли «Circular» список своего рода «линейным списком»?

Например, если понятие «линейное» означает, что у нас есть одно и только одно правило, чтобы сказать, что такое «следующий» элемент: тогда «Циркулярный список» также должен быть «линейным списком»?

Если да, то «общие списки», хотя они могут иметь высокую размерную структуру, но до тех пор, пока мы даем правило о том, как найти «следующий» элемент, можно ли его рассматривать как «линейный список»?

+0

Идти на конечность здесь. Циклические списки и «регулярные» списки линейно пересекаются. Некоторые структуры данных (например, деревья) не являются линейно доступными. Не уверен, есть ли что-то как список без линеек. –

+0

https: //en.wikipedia.org/wiki/Linked_list # Linked_list_operations –

+0

Я никогда не слышал о «линейном списке» (даже у wiki не существует определения), только «линейный связанный список». Более или менее терминологическая проблема. Когда вы говорите что-то линейное, это означает, что его график может быть представлен как прямая. Поэтому я думаю, поэтому «круговой список» не имеет линейного названия. –

ответ

3

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

Например, структура ниже не линейной:

Non-linear list

Хотя каждый узел имеет не более одного преемника, узел «C» является преемником двух других узлов - «В» и "F". Следовательно, структура не может считаться линейной.

Список линейных структур данных можно найти here.

2

Я не уверен, в каком контексте вы пришли с этим вопросом, но мое понимание «кругового списка» в общей терминологии структуры данных компьютера - это список, в котором последний элемент указывает на первый элемент, так что список может проходить бесконечно. Это полезно в некоторых приложениях.

0

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

Из-за небольшой разницы в реализации круговых списков, то есть,

ни один из указателей указывает на NULL и becoz его нет бесконечной природы enter image description here

там имеет тенденцию быть путаница ...

но Круговая Связанный список обычно называют как линейной Linked List только

Обратите внимание, что

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

Смежные вопросы