Solving LinkedList questions using two pointers
What you will learn
How to traverse a LinkedList
How to use two pointer approach in Linked List
How to access, add, delete, add elements in Linked list
How to reverse a Linked list
LinkedList is the easiest topic comparing with all other DSA topics.
What is LinkedList?
A class / node is created with two elements – data and address. Data field stores some values. Address field will store the address of the node to which it needs to connect.
When several nodes are connected with each other, it forms a Linked List.
Why Linked List?
Array has a size limitation. When we don’t know the size of the elements we are going to have, we can’t use Arrays. We can use Lists in those situations
Types of Linked Lists:
- Simple Linked List – In this type of linked list, one can move or traverse the linked list in only one direction. where the next pointer of each node points to other nodes but the next pointer of the last node points to NULL. It is also called “Singly Linked List”.
- Doubly Linked List – In this type of linked list, one can move or traverse the linked list in both directions (Forward and Backward)
- Circular Linked List – In this type of linked list, the last node of the linked list contains the link of the first/head node of the linked list in its next pointer.
- Doubly Circular Linked List – A Doubly Circular linked list or a circular two-way linked list is a more complex type of linked list that contains a pointer to the next as well as the previous node in the sequence. The difference between the doubly linked and circular doubly list is the same as that between a singly linked list and a circular linked list. The circular doubly linked list does not contain null in the previous field of the first node.
Two pointer approach is the most commonly used approached for all Linked list problems. In this course, we have solved many basic Leetcode questions related to Linked list.