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
heap Sort Algorithm
Lemia Algmri
 
PPTX
Linked list
akshat360
 
PPTX
Stack and Queue
Apurbo Datta
 
PPTX
single linked list
Sathasivam Rangasamy
 
PPTX
Queues
Ashim Lamichhane
 
PDF
Applications of stack
eShikshak
 
PPT
Abstract data types
Poojith Chowdhary
 
PPTX
Queue in Data Structure
Janki Shah
 
PPTX
Stacks IN DATA STRUCTURES
Sowmya Jyothi
 
PDF
Array data structure
maamir farooq
 
PPTX
Linked list
KalaivaniKS1
 
PPTX
Queue ppt
SouravKumar328
 
PPTX
Data Structures - Lecture 9 [Stack & Queue using Linked List]
Muhammad Hammad Waseem
 
PPTX
Doubly Linked List
Ninad Mankar
 
PDF
Abstract Data Types
Reggie Niccolo Santos
 
PPTX
Circular link list.ppt
Tirthika Bandi
 
PPT
Introduction to data structures and Algorithm
Dhaval Kaneria
 
PPTX
linked list in data structure
shameen khan
 
PPTX
Priority Queue in Data Structure
Meghaj Mallick
 
PPTX
Stacks and Queue - Data Structures
Dr. Jasmine Beulah Gnanadurai
 
heap Sort Algorithm
Lemia Algmri
 
Linked list
akshat360
 
Stack and Queue
Apurbo Datta
 
single linked list
Sathasivam Rangasamy
 
Applications of stack
eShikshak
 
Abstract data types
Poojith Chowdhary
 
Queue in Data Structure
Janki Shah
 
Stacks IN DATA STRUCTURES
Sowmya Jyothi
 
Array data structure
maamir farooq
 
Linked list
KalaivaniKS1
 
Queue ppt
SouravKumar328
 
Data Structures - Lecture 9 [Stack & Queue using Linked List]
Muhammad Hammad Waseem
 
Doubly Linked List
Ninad Mankar
 
Abstract Data Types
Reggie Niccolo Santos
 
Circular link list.ppt
Tirthika Bandi
 
Introduction to data structures and Algorithm
Dhaval Kaneria
 
linked list in data structure
shameen khan
 
Priority Queue in Data Structure
Meghaj Mallick
 
Stacks and Queue - Data Structures
Dr. Jasmine Beulah Gnanadurai
 

Similar to Data Structure and Algorithms Linked List (20)

PPTX
4.linked list(contd.)
Chandan Singh
 
PPT
ds 4Linked lists.ppt
AlliVinay1
 
PPTX
Lecture 5 data structures and algorithms
Aakash deep Singhal
 
PPT
Operations on linked list
Sumathi Kv
 
PDF
Linked Lists.pdf
Kaynattariq1
 
PPT
linked_lists.ppt linked_lists linked_lists
AmsaAzeem
 
PPTX
Linked lists a
Khuram Shahzad
 
PPTX
singlelinkedlistasdfghzxcvbnmqwertyuiopa
rabailasghar3
 
PPT
Data Structures with C Linked List
Reazul Islam
 
PPTX
Data structures linked list introduction.pptx
Kalpana Mohan
 
PPTX
Linked list (1).pptx
rajveersingh643731
 
PPTX
DS_LinkedList.pptx
msohail37
 
PPT
Unit ii(dsc++)
Durga Devi
 
PPTX
Data structure and algorithm list structures
gangaresearch21
 
PPT
dynamicList.ppt
ssuser0be977
 
PPTX
Linked list
RahulGandhi110
 
PDF
ds-lecture-4-171012041008 (1).pdf
KamranAli649587
 
PPTX
Revisiting a data structures in detail with linked list stack and queue
ssuser7319f8
 
PPTX
VCE Unit 02 (1).pptx
skilljiolms
 
PPTX
data structures lists operation of lists
muskans14
 
4.linked list(contd.)
Chandan Singh
 
ds 4Linked lists.ppt
AlliVinay1
 
Lecture 5 data structures and algorithms
Aakash deep Singhal
 
Operations on linked list
Sumathi Kv
 
Linked Lists.pdf
Kaynattariq1
 
linked_lists.ppt linked_lists linked_lists
AmsaAzeem
 
Linked lists a
Khuram Shahzad
 
singlelinkedlistasdfghzxcvbnmqwertyuiopa
rabailasghar3
 
Data Structures with C Linked List
Reazul Islam
 
Data structures linked list introduction.pptx
Kalpana Mohan
 
Linked list (1).pptx
rajveersingh643731
 
DS_LinkedList.pptx
msohail37
 
Unit ii(dsc++)
Durga Devi
 
Data structure and algorithm list structures
gangaresearch21
 
dynamicList.ppt
ssuser0be977
 
Linked list
RahulGandhi110
 
ds-lecture-4-171012041008 (1).pdf
KamranAli649587
 
Revisiting a data structures in detail with linked list stack and queue
ssuser7319f8
 
VCE Unit 02 (1).pptx
skilljiolms
 
data structures lists operation of lists
muskans14
 
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
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
PPTX
Empowering Asian Contributions: The Rise of Regional User Groups in Open Sour...
Shane Coughlan
 
PDF
Open Chain Q2 Steering Committee Meeting - 2025-06-25
Shane Coughlan
 
PPTX
AEM User Group: India Chapter Kickoff Meeting
jennaf3
 
PDF
Alexander Marshalov - How to use AI Assistants with your Monitoring system Q2...
VictoriaMetrics
 
PDF
The 5 Reasons for IT Maintenance - Arna Softech
Arna Softech
 
PDF
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pdf
Varsha Nayak
 
PPTX
Finding Your License Details in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
SAP Firmaya İade ABAB Kodları - ABAB ile yazılmıl hazır kod örneği
Salih Küçük
 
PPTX
Tally software_Introduction_Presentation
AditiBansal54083
 
PPTX
Milwaukee Marketo User Group - Summer Road Trip: Mapping and Personalizing Yo...
bbedford2
 
PPTX
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
PDF
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
PDF
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
PPTX
Change Common Properties in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
Digger Solo: Semantic search and maps for your local files
seanpedersen96
 
PDF
Driver Easy Pro 6.1.1 Crack Licensce key 2025 FREE
utfefguu
 
PDF
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
PPTX
Homogeneity of Variance Test Options IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
Empowering Asian Contributions: The Rise of Regional User Groups in Open Sour...
Shane Coughlan
 
Open Chain Q2 Steering Committee Meeting - 2025-06-25
Shane Coughlan
 
AEM User Group: India Chapter Kickoff Meeting
jennaf3
 
Alexander Marshalov - How to use AI Assistants with your Monitoring system Q2...
VictoriaMetrics
 
The 5 Reasons for IT Maintenance - Arna Softech
Arna Softech
 
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pdf
Varsha Nayak
 
Finding Your License Details in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
SAP Firmaya İade ABAB Kodları - ABAB ile yazılmıl hazır kod örneği
Salih Küçük
 
Tally software_Introduction_Presentation
AditiBansal54083
 
Milwaukee Marketo User Group - Summer Road Trip: Mapping and Personalizing Yo...
bbedford2
 
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
Change Common Properties in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Digger Solo: Semantic search and maps for your local files
seanpedersen96
 
Driver Easy Pro 6.1.1 Crack Licensce key 2025 FREE
utfefguu
 
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
Homogeneity of Variance Test Options IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 

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