Lect06,08 Linked Lists
Lect06,08 Linked Lists
Data
Next
(Pointer) node
root
root
struct node
{
int x; //Data (1 or more items)
struct node *next; //Next (Pointer)
};
Create The First Node
root
1 node 1 2 node 2 3
3
Print Nodes’ Data
root
currentnode node 1 node 2
Insert a Node
Old value
2 50 1
Inserted node
1
2
Delete a Node (node 1)
Old value
1
Complete Program
Circular Linked List
e.g. multi-player game – music list
Data
Next
(Pointer) node
root
struct node
{
int x; //Data (1 or more items)
struct node *next; //Next (Pointer)
};
Create The First Node
root
3 Replace with
Print Nodes’ Data
node 1 node 2
root
currentnode
Doubly Linked List
e.g. bus stop (where one can go in both
Data
directions)
root
next (Pointer)
struct node
{
int x; //Data (1 or more items)
struct node *next; //Next (Pointer)
struct node *previous; //Previous (Pointer)
};