SlideShare a Scribd company logo
4
Most read
9
Most read
12
Most read
Introduction: memory representation, allocation
and garbage collection.
Operations: Traversal, insertion and deletion.
Header linked lists: Grounded and Circular
Two-way lists: operations on two way linked lists
Introduction
Linked list
Linear collection of self-referential class objects, called
nodes
Connected by pointer links
Accessed via a pointer to the first node of the list
Link pointer in the last node is set to null to mark the
list’s end
Use a linked list instead of an array when
You have an unpredictable number of data elements
You want to insert and delete quickly.
Self-Referential Structures
Self-referential structures
 Structure that contains a pointer to a structure of the same type
 Can be linked together to form useful data structures such as lists, queues,
stacks and trees
 Terminated with a NULL pointer (0)
Diagram of two self-referential structure objects linked together
struct node {
int data;
struct node *nextPtr;
};
nextPtr
Points to an object of type node
Referred to as a link
100
NULL pointer (points to nothing)Data member and pointer
500…
3 2
Linked Lists
Types of linked lists:
Singly linked list
 Begins with a pointer to the first node
 Terminates with a null pointer
 Only traversed in one direction
Circular, singly linked
 Pointer in the last node points
back to the first node
Doubly linked list
 Two “start pointers” – first element and last element
 Each node has a forward pointer and a backward pointer
 Allows traversals both forwards and backwards
Circular, doubly linked list
 Forward pointer of the last node points to the first node and
backward pointer of the first node points to the last node
Linked Representation of Data
In a linked representation, data is
not stored in a contiguous
manner. Instead, data is stored at
random locations and the current
data location provides the
information regarding the
location of the next data.
Adding item 498 on to the linked list
Q: What is the cost of adding an item?
Q: how about adding 300 and 800
onto the linked list
Deleting item 358 from the linked list
Q: What is the cost of deleting an item?
Q: What is the cost of searching for an
item?
345
358
490
501
513
724
797
701
561
555
345
358
490
501
513
724
797
701
561
555
498
345
358
490
501
513
724
797
701
561
555
498
Linked List
How do we represent a linked list in the memory
Each location has two fields: Data Field and Pointer (Link)
Field.
Linked List Implementation
 struct node {
int data;
struct node *link;
};
struct node my_node;
Example:
START Node
Element
Pointer (Link)
Field
Data
Field
Null Pointer
300 5
500 0
100 4
200 1
400 2
1
2
3
4
5
3
NULL
Conventions of Linked List
There are several conventions for the link to indicate
the end of the list.
1. a null link that points to no node (0 or NULL)
2. a dummy node that contains no item
3. a reference back to the first node, making it a
circular list.
bat  cat  sat  vat NULL
Linked List Manipulation Algorithms
 List Traversal
 Let START be a pointer to a linked list in memory. Write an
algorithm to print the contents of each node of the list
 Algorithm:
 TRAVERSE(DATA, LINK, START)
1. set PTR = START
2. repeat step 3 and 4 while PTR ≠ NULL
3. print PTR->DATA
4. set PTR = PTR -> LINK
5. stop
1000
START
2000 3000 4000
PTR
PTR = LINK[PTR]
10 20 30 40
10 20 30 40 00
Data Link
Search for an Item
 Search for an ITEM
 Let START be a pointer to a linked list in memory. Write an
algorithm that finds the location LOC of the node where ITEM first
appears in the list, or sets LOC=NULL if search is unsuccessful.
 Algorithm:
SEARCH (DATA, LINK, START, ITEM, LOC)
1. set PTR = START
2. repeat step 3 while PTR ≠ NULL
3. if ITEM == PTR -> DATA, then
4. set LOC = PTR, and Exit
5. else
6. set PTR = PTR -> LINK
7. set LOC = NULL /*search unsuccessful */
8. Stop
1000
START
2000 3000 4000
PTR
PTR = LINK[PTR]
Insert an Item
 Insertion into a Listed List
 Let START be a pointer to a linked list in memory with
successive nodes A and B. Write an algorithm to insert node N
between nodes A and B.
 Algorithm:
 INSERT(DATA, LINK, START, A, B, N)
1. Set PTR = START
2. Repeat step 3 while PTR ≠ NULL
3. If PTR == A, then
4. Set N->LINK = PTR -> LINK (or = B)
5. Set PTR->LINK = N
6. exit
7. else
8. Set PTR=PTR->LINK
9. If PTR == NULL insertion unsuccessful
10. Stop
START
1000 2000 3000 4000 5000
Node A Node B
PTR
START
1000 2000 3000 4000 5000
Node A Node B
3500
Node N
3 cases: first node, last node, in-between node. (ex: if ITEM = 500? if ITEM = 6000?)
Delete an Item
 Deletion from a Linked List
 Let START be a pointer to a linked list in memory that contains integer data.
Write an algorithm to delete note which contains ITEM.
 Algorithm
 DELETE (DATA, LINK, START, ITEM)
1. Set PTR=START and TEMP = START
2. Repeat step 3 while PTR ≠ NULL
3. If PTR->DATA == ITEM, then
4. Set TEMP->LINK = PTR -> LINK, exit
5. else
6. TEMP = PTR
7. PTR = PTR -> LINK
8. Stop
3 cases: first node, last node, in-between node. (ex: if ITEM = 1000? if ITEM = 5000?)
PTR
START
1000 2000 3000 4000 5000
Node A Node B
3500
Node N
START
1000 2000 3000 4000 5000
Node A Node B
3500
Node N
3500
ITEM
…..
TEMP
Header Linked Lists
 Header linked list is a linked list which always contains a
special node called the Header Node, at the beginning of
the list.
It has two types:
a) Grounded Header List
Last Node Contains the NULL Pointer
b) Circular Header List
Last Node Points Back to the Header Node
13
Header linked list
Grounded Header linked list Circular Header linked list
Grounded Header Link List
A grounded header list is a header list where the last
node contains the null pointer.
The term “grounded” comes from the fact that many
texts use the electrical ground symbol to indicate the
null pointer.
Header Node
Start
Figure: Grounded Header Link List
Circular Header Linked List
A circular header Link list is a header list where the last
node points back to the header node.
The chains do not indicate the last node and first node of
the link list.
In this case, external pointers provide a frame reference
because last node of a circular link list does not contain
null pointer.
Header Node
Figure: Circular Header Link List
Start
Benefit of using Header Node
One way to simplify insertion and deletion is never to
insert an item before the first or after the last item and
never to delete the first node
You can set a header node at the beginning of the list
containing a value smaller than the smallest value in the
data set
You can set a trailer node at the end of the list containing
a value larger than the largest value in the data set.
These two nodes, header and trailer, serve merely to
simplify the insertion and deletion algorithms and are not
part of the actual list.
The actual list is between these two nodes.
Two-way lists
A two-way list is a linear collection of data elements,
called nodes, where each node N is divided into three
parts:
Information field
Forward Link which points to the next node
Backward Link which points to the previous node
The starting address or the address of first node is
stored in START / FIRST pointer .
Another pointer can be used to traverse list from end.
This pointer is called END or LAST.
Two-way lists(cont…)
Every node (except the last node) contains the
address of the next node, and every node (except
the first node) contains the address of the
previous node.
A two-way list (doubly linked list) can be
traversed in either direction.
Representations of
Two-way lists
Start
X 4 2 10
Last
INFO Field
BACK Pointer
FORE Pointer
X
Thank You

More Related Content

What's hot (20)

PPTX
Doubly Linked List
Ninad Mankar
 
PPTX
Linked List
Ashim Lamichhane
 
PPTX
Linear data structure concepts
Akila Krishnamoorthy
 
PPTX
linked list in data structure
shameen khan
 
PPSX
Data Structure (Queue)
Adam Mukharil Bachtiar
 
PPTX
Linked list
Md. Afif Al Mamun
 
PPTX
Double Linked List (Algorithm)
Huba Akhtar
 
PPTX
Deletion from single way linked list and search
Estiak Khan
 
PPT
Queue data structure
anooppjoseph
 
PPTX
Linked list
KalaivaniKS1
 
PPTX
Linked list
akshat360
 
PPTX
Queue ppt
SouravKumar328
 
PPT
Linked list
Trupti Agrawal
 
PPTX
queue & its applications
somendra kumar
 
PPTX
Data Structures - Lecture 9 [Stack & Queue using Linked List]
Muhammad Hammad Waseem
 
PPT
Linked lists
SARITHA REDDY
 
PPTX
Stack - Data Structure - Notes
Omprakash Chauhan
 
PPTX
Linked List
RaaviKapoor
 
PPTX
Queue Implementation Using Array & Linked List
PTCL
 
PPSX
Stacks Implementation and Examples
greatqadirgee4u
 
Doubly Linked List
Ninad Mankar
 
Linked List
Ashim Lamichhane
 
Linear data structure concepts
Akila Krishnamoorthy
 
linked list in data structure
shameen khan
 
Data Structure (Queue)
Adam Mukharil Bachtiar
 
Linked list
Md. Afif Al Mamun
 
Double Linked List (Algorithm)
Huba Akhtar
 
Deletion from single way linked list and search
Estiak Khan
 
Queue data structure
anooppjoseph
 
Linked list
KalaivaniKS1
 
Linked list
akshat360
 
Queue ppt
SouravKumar328
 
Linked list
Trupti Agrawal
 
queue & its applications
somendra kumar
 
Data Structures - Lecture 9 [Stack & Queue using Linked List]
Muhammad Hammad Waseem
 
Linked lists
SARITHA REDDY
 
Stack - Data Structure - Notes
Omprakash Chauhan
 
Linked List
RaaviKapoor
 
Queue Implementation Using Array & Linked List
PTCL
 
Stacks Implementation and Examples
greatqadirgee4u
 

Similar to Data Structure and Algorithms Linked List (20)

PPTX
Engineering.CSE.DataStructure.Linkedlist.notes
limev72215
 
PPT
ds 4Linked lists.ppt
AlliVinay1
 
PPT
Operations on linked list
Sumathi Kv
 
PPTX
4.linked list(contd.)
Chandan Singh
 
PPTX
linked list in dsa python (presentation)
MirzaAbdullahTariq
 
PPTX
Lecture 5 data structures and algorithms
Aakash deep Singhal
 
PPT
Unit ii(dsc++)
Durga Devi
 
PPTX
Module 3 Dara structure notes
Dreamers6
 
PPTX
Linked lists 1
naymulhaque
 
PPT
03. Linked List-1 (1) for beginners .ppt
2023200000495
 
PPT
linked_lists.ppt linked_lists linked_lists
AmsaAzeem
 
PPT
DS Unit 2.ppt
JITTAYASHWANTHREDDY
 
PPT
linked list1.ppt linked list ppts and notes
nisharaheja1986
 
PPTX
linked list.pptxdj bdjbhjddnbfjdndvdhbfvgh
ssusere1e8b7
 
PDF
Chapter 3 Linkedlist Data Structure .pdf
Axmedcarb
 
PPTX
Data structure and algorithms chapter three LINKED LIST
binakasehun2026
 
PDF
unit 2- PPT.pdf
PranavMakwana6
 
PDF
unit 2- linked list- PPT for btech students.pdf
soniasharmafdp
 
PPTX
1.3 Linked List.pptx
ssuserd2f031
 
PPT
Algo>ADT list & linked list
Ain-ul-Moiz Khawaja
 
Engineering.CSE.DataStructure.Linkedlist.notes
limev72215
 
ds 4Linked lists.ppt
AlliVinay1
 
Operations on linked list
Sumathi Kv
 
4.linked list(contd.)
Chandan Singh
 
linked list in dsa python (presentation)
MirzaAbdullahTariq
 
Lecture 5 data structures and algorithms
Aakash deep Singhal
 
Unit ii(dsc++)
Durga Devi
 
Module 3 Dara structure notes
Dreamers6
 
Linked lists 1
naymulhaque
 
03. Linked List-1 (1) for beginners .ppt
2023200000495
 
linked_lists.ppt linked_lists linked_lists
AmsaAzeem
 
DS Unit 2.ppt
JITTAYASHWANTHREDDY
 
linked list1.ppt linked list ppts and notes
nisharaheja1986
 
linked list.pptxdj bdjbhjddnbfjdndvdhbfvgh
ssusere1e8b7
 
Chapter 3 Linkedlist Data Structure .pdf
Axmedcarb
 
Data structure and algorithms chapter three LINKED LIST
binakasehun2026
 
unit 2- PPT.pdf
PranavMakwana6
 
unit 2- linked list- PPT for btech students.pdf
soniasharmafdp
 
1.3 Linked List.pptx
ssuserd2f031
 
Algo>ADT list & linked list
Ain-ul-Moiz Khawaja
 
Ad

More from ManishPrajapati78 (15)

PPT
Data Structure and Algorithms Binary Search Tree
ManishPrajapati78
 
PPT
Data Structure and Algorithms Binary Tree
ManishPrajapati78
 
PPT
Data Structure and Algorithms Queues
ManishPrajapati78
 
PPTX
Data Structure and Algorithms Merge Sort
ManishPrajapati78
 
PPTX
Data Structure and Algorithms The Tower of Hanoi
ManishPrajapati78
 
PPT
Data Structure and Algorithms Stacks
ManishPrajapati78
 
PPT
Data Structure and Algorithms Sorting
ManishPrajapati78
 
PPT
Data Structure and Algorithms Arrays
ManishPrajapati78
 
PPT
Data Structure and Algorithms
ManishPrajapati78
 
PPT
Data Structure and Algorithms Hashing
ManishPrajapati78
 
PPTX
Data Structure and Algorithms Graph Traversal
ManishPrajapati78
 
PPT
Data Structure and Algorithms Graphs
ManishPrajapati78
 
PPT
Data Structure and Algorithms Huffman Coding Algorithm
ManishPrajapati78
 
PPT
Data Structure and Algorithms Heaps and Trees
ManishPrajapati78
 
PPT
Data Structure and Algorithms AVL Trees
ManishPrajapati78
 
Data Structure and Algorithms Binary Search Tree
ManishPrajapati78
 
Data Structure and Algorithms Binary Tree
ManishPrajapati78
 
Data Structure and Algorithms Queues
ManishPrajapati78
 
Data Structure and Algorithms Merge Sort
ManishPrajapati78
 
Data Structure and Algorithms The Tower of Hanoi
ManishPrajapati78
 
Data Structure and Algorithms Stacks
ManishPrajapati78
 
Data Structure and Algorithms Sorting
ManishPrajapati78
 
Data Structure and Algorithms Arrays
ManishPrajapati78
 
Data Structure and Algorithms
ManishPrajapati78
 
Data Structure and Algorithms Hashing
ManishPrajapati78
 
Data Structure and Algorithms Graph Traversal
ManishPrajapati78
 
Data Structure and Algorithms Graphs
ManishPrajapati78
 
Data Structure and Algorithms Huffman Coding Algorithm
ManishPrajapati78
 
Data Structure and Algorithms Heaps and Trees
ManishPrajapati78
 
Data Structure and Algorithms AVL Trees
ManishPrajapati78
 
Ad

Recently uploaded (20)

PDF
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
PPTX
Finding Your License Details in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
PDF
Odoo CRM vs Zoho CRM: Honest Comparison 2025
Odiware Technologies Private Limited
 
PPTX
Homogeneity of Variance Test Options IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
Driver Easy Pro 6.1.1 Crack Licensce key 2025 FREE
utfefguu
 
PDF
iTop VPN With Crack Lifetime Activation Key-CODE
utfefguu
 
PDF
Linux Certificate of Completion - LabEx Certificate
VICTOR MAESTRE RAMIREZ
 
PDF
Build It, Buy It, or Already Got It? Make Smarter Martech Decisions
bbedford2
 
PPTX
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
PDF
How to Hire AI Developers_ Step-by-Step Guide in 2025.pdf
DianApps Technologies
 
PDF
vMix Pro 28.0.0.42 Download vMix Registration key Bundle
kulindacore
 
PDF
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
PDF
MiniTool Partition Wizard Free Crack + Full Free Download 2025
bashirkhan333g
 
PDF
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
PDF
Digger Solo: Semantic search and maps for your local files
seanpedersen96
 
PDF
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
PPTX
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pptx
Varsha Nayak
 
PDF
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
PPTX
Transforming Mining & Engineering Operations with Odoo ERP | Streamline Proje...
SatishKumar2651
 
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
Finding Your License Details in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
Odoo CRM vs Zoho CRM: Honest Comparison 2025
Odiware Technologies Private Limited
 
Homogeneity of Variance Test Options IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Driver Easy Pro 6.1.1 Crack Licensce key 2025 FREE
utfefguu
 
iTop VPN With Crack Lifetime Activation Key-CODE
utfefguu
 
Linux Certificate of Completion - LabEx Certificate
VICTOR MAESTRE RAMIREZ
 
Build It, Buy It, or Already Got It? Make Smarter Martech Decisions
bbedford2
 
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
How to Hire AI Developers_ Step-by-Step Guide in 2025.pdf
DianApps Technologies
 
vMix Pro 28.0.0.42 Download vMix Registration key Bundle
kulindacore
 
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
MiniTool Partition Wizard Free Crack + Full Free Download 2025
bashirkhan333g
 
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
Digger Solo: Semantic search and maps for your local files
seanpedersen96
 
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pptx
Varsha Nayak
 
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
Transforming Mining & Engineering Operations with Odoo ERP | Streamline Proje...
SatishKumar2651
 

Data Structure and Algorithms Linked List

  • 1. Introduction: memory representation, allocation and garbage collection. Operations: Traversal, insertion and deletion. Header linked lists: Grounded and Circular Two-way lists: operations on two way linked lists
  • 2. Introduction Linked list Linear collection of self-referential class objects, called nodes Connected by pointer links Accessed via a pointer to the first node of the list Link pointer in the last node is set to null to mark the list’s end Use a linked list instead of an array when You have an unpredictable number of data elements You want to insert and delete quickly.
  • 3. Self-Referential Structures Self-referential structures  Structure that contains a pointer to a structure of the same type  Can be linked together to form useful data structures such as lists, queues, stacks and trees  Terminated with a NULL pointer (0) Diagram of two self-referential structure objects linked together struct node { int data; struct node *nextPtr; }; nextPtr Points to an object of type node Referred to as a link 100 NULL pointer (points to nothing)Data member and pointer 500… 3 2
  • 4. Linked Lists Types of linked lists: Singly linked list  Begins with a pointer to the first node  Terminates with a null pointer  Only traversed in one direction Circular, singly linked  Pointer in the last node points back to the first node Doubly linked list  Two “start pointers” – first element and last element  Each node has a forward pointer and a backward pointer  Allows traversals both forwards and backwards Circular, doubly linked list  Forward pointer of the last node points to the first node and backward pointer of the first node points to the last node
  • 5. Linked Representation of Data In a linked representation, data is not stored in a contiguous manner. Instead, data is stored at random locations and the current data location provides the information regarding the location of the next data. Adding item 498 on to the linked list Q: What is the cost of adding an item? Q: how about adding 300 and 800 onto the linked list Deleting item 358 from the linked list Q: What is the cost of deleting an item? Q: What is the cost of searching for an item? 345 358 490 501 513 724 797 701 561 555 345 358 490 501 513 724 797 701 561 555 498 345 358 490 501 513 724 797 701 561 555 498
  • 6. Linked List How do we represent a linked list in the memory Each location has two fields: Data Field and Pointer (Link) Field. Linked List Implementation  struct node { int data; struct node *link; }; struct node my_node; Example: START Node Element Pointer (Link) Field Data Field Null Pointer 300 5 500 0 100 4 200 1 400 2 1 2 3 4 5 3 NULL
  • 7. Conventions of Linked List There are several conventions for the link to indicate the end of the list. 1. a null link that points to no node (0 or NULL) 2. a dummy node that contains no item 3. a reference back to the first node, making it a circular list.
  • 8. bat  cat  sat  vat NULL
  • 9. Linked List Manipulation Algorithms  List Traversal  Let START be a pointer to a linked list in memory. Write an algorithm to print the contents of each node of the list  Algorithm:  TRAVERSE(DATA, LINK, START) 1. set PTR = START 2. repeat step 3 and 4 while PTR ≠ NULL 3. print PTR->DATA 4. set PTR = PTR -> LINK 5. stop 1000 START 2000 3000 4000 PTR PTR = LINK[PTR] 10 20 30 40 10 20 30 40 00 Data Link
  • 10. Search for an Item  Search for an ITEM  Let START be a pointer to a linked list in memory. Write an algorithm that finds the location LOC of the node where ITEM first appears in the list, or sets LOC=NULL if search is unsuccessful.  Algorithm: SEARCH (DATA, LINK, START, ITEM, LOC) 1. set PTR = START 2. repeat step 3 while PTR ≠ NULL 3. if ITEM == PTR -> DATA, then 4. set LOC = PTR, and Exit 5. else 6. set PTR = PTR -> LINK 7. set LOC = NULL /*search unsuccessful */ 8. Stop 1000 START 2000 3000 4000 PTR PTR = LINK[PTR]
  • 11. Insert an Item  Insertion into a Listed List  Let START be a pointer to a linked list in memory with successive nodes A and B. Write an algorithm to insert node N between nodes A and B.  Algorithm:  INSERT(DATA, LINK, START, A, B, N) 1. Set PTR = START 2. Repeat step 3 while PTR ≠ NULL 3. If PTR == A, then 4. Set N->LINK = PTR -> LINK (or = B) 5. Set PTR->LINK = N 6. exit 7. else 8. Set PTR=PTR->LINK 9. If PTR == NULL insertion unsuccessful 10. Stop START 1000 2000 3000 4000 5000 Node A Node B PTR START 1000 2000 3000 4000 5000 Node A Node B 3500 Node N 3 cases: first node, last node, in-between node. (ex: if ITEM = 500? if ITEM = 6000?)
  • 12. Delete an Item  Deletion from a Linked List  Let START be a pointer to a linked list in memory that contains integer data. Write an algorithm to delete note which contains ITEM.  Algorithm  DELETE (DATA, LINK, START, ITEM) 1. Set PTR=START and TEMP = START 2. Repeat step 3 while PTR ≠ NULL 3. If PTR->DATA == ITEM, then 4. Set TEMP->LINK = PTR -> LINK, exit 5. else 6. TEMP = PTR 7. PTR = PTR -> LINK 8. Stop 3 cases: first node, last node, in-between node. (ex: if ITEM = 1000? if ITEM = 5000?) PTR START 1000 2000 3000 4000 5000 Node A Node B 3500 Node N START 1000 2000 3000 4000 5000 Node A Node B 3500 Node N 3500 ITEM ….. TEMP
  • 13. Header Linked Lists  Header linked list is a linked list which always contains a special node called the Header Node, at the beginning of the list. It has two types: a) Grounded Header List Last Node Contains the NULL Pointer b) Circular Header List Last Node Points Back to the Header Node 13 Header linked list Grounded Header linked list Circular Header linked list
  • 14. Grounded Header Link List A grounded header list is a header list where the last node contains the null pointer. The term “grounded” comes from the fact that many texts use the electrical ground symbol to indicate the null pointer. Header Node Start Figure: Grounded Header Link List
  • 15. Circular Header Linked List A circular header Link list is a header list where the last node points back to the header node. The chains do not indicate the last node and first node of the link list. In this case, external pointers provide a frame reference because last node of a circular link list does not contain null pointer. Header Node Figure: Circular Header Link List Start
  • 16. Benefit of using Header Node One way to simplify insertion and deletion is never to insert an item before the first or after the last item and never to delete the first node You can set a header node at the beginning of the list containing a value smaller than the smallest value in the data set You can set a trailer node at the end of the list containing a value larger than the largest value in the data set. These two nodes, header and trailer, serve merely to simplify the insertion and deletion algorithms and are not part of the actual list. The actual list is between these two nodes.
  • 17. Two-way lists A two-way list is a linear collection of data elements, called nodes, where each node N is divided into three parts: Information field Forward Link which points to the next node Backward Link which points to the previous node The starting address or the address of first node is stored in START / FIRST pointer . Another pointer can be used to traverse list from end. This pointer is called END or LAST.
  • 18. Two-way lists(cont…) Every node (except the last node) contains the address of the next node, and every node (except the first node) contains the address of the previous node. A two-way list (doubly linked list) can be traversed in either direction.
  • 19. Representations of Two-way lists Start X 4 2 10 Last INFO Field BACK Pointer FORE Pointer X