Круговой связанный список похож на двойной связанный список, где в узле есть 2 указателя (предыдущий и следующий). Один указатель (следующий) ссылается на адрес следующего элемента данных, а другой указатель (предыдущий) ссылается на адрес предыдущего элемента данных. Единственная разница в том, что предыдущая глава относится к адресу последнего элемента данных, а последняя следующая относится к адресу первого элемента данных. Это похоже на связывание двух концов двусвязного списка.

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

  1. head: ссылается на адрес первого элемента данных.
  2. последний:относится к адресу последнего элемента данных.
  3. prev:сохраняет адрес предыдущего элемента данных.
  4. следующий. Сохраняет адрес следующего элемента данных.
  5. элемент данных. Сохраняет данные в памяти.
  6. узел. Сочетание предыдущего, следующего и элемента данных.

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

Представление кругового связанного списка:

Вставка: вставляется в конец кругового связанного списка. Адрес в заголовках prev и last меняется на адрес нового узла.

Удаление. Удаляет последний узел из кругового связанного списка.

Поиск. Эта операция помогает искать ключ в круговом связанном списке.

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

Теперь давайте посмотрим на программы Circular Linked list:

  1. C

2. Java

На этом мы завершили связанные списки.

Следующая история о стеках и их операциях.

Спасибо.