Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 1

Doubly linked list

1. DefinitionDoubly is a type of linked list thatallows us to go in both directi


ons and in a linked list. Powerpoint Templates Page 3
2. A node in a doubly linked liststores two references: - a next link, which poi
nts to the next node in the list, - a prev link, which points to the previous no
de in the list. Powerpoint Templates Page 4
3. Such lists allow for :a great variety of quick updateoperations, including in
sertion andremoval at both ends, and in themiddle. Powerpoint Templates Page 5
4. Header and Trailer Sentinels To simplify programming, it is convenient to add
special nodes at both ends of a doubly linked list:
The header has a valid next
reference but a null prev reference,
while the trailer has a valid prev referen
ce but a null next reference. What is the Sentinels? A sentinel nodes do not sto
re any elements.and second name for sentinels node is
Dummy
Powerpoint Templates
Page 6
5. Doubly Linked ListsFigure 3.14: A doubly linked list with sentinels, header a
nd trailer, marking the ends of the list. An empty list would have these sentine
ls pointing to each other. We do not show the null prev pointer for the header n
or do we show the null next pointer for the trailer. Powerpoint Templates Page 7
6. Implementation
7. DeletionFigure 3.15: Removing the node at the end of a a doubly linked list w
ithheader and trailer sentinels: (a) before deleting at the tail; (b) deleting a
tthe tail; (c) after the deletion.
8. DeletionCode Fragment 3.18: Removing the last node of a doubly linked list. V
ariable size keeps track of the current number of elements in the list. Note tha
t this method works also if the list has size one.
9. InsertionFigure 3.16: Adding an element at the front: (a)during; (b) after.
10. InsertionCode Fragment 3.19: Inserting a new node v at the beginning of a do
ublylinked list. Variable size keeps track of the current number of elements int
he list. Note that this method works also on an empty list.

You might also like