# Reverse Linked List

Category

Linked List

Checkbox

Checkbox

Difficulty

Easy

Index

31

Key Ideas

The key idea to solve problem number 75 in the LeetCode curated list is to use the two-pointer technique called "Dutch National Flag" algorithm to sort the array in-place.

Problem Number

206

Problem Summary

## Problem Summary
The problem number 206 in LeetCode's curated list is the "Reverse Linked List" problem. It is classified as an easy-level problem and falls under the category of Linked List. The task is to reverse a singly linked list, where each node contains a value and a pointer to the next node.
## Key Pitfalls
Some key pitfalls to watch out for when solving this problem include:
- Forgetting to update the next pointer of a node during the reversal process.
- Failing to handle the case of an empty linked list.
- Incorrectly assigning the new head of the reversed list.

Solution Summary

The best solution to reverse a linked list in LeetCode-75 curated list involves using iterative or recursive methods.
For the iterative approach, we maintain three pointers:

`prev`

, `curr`

, and `next`

. We start with `prev`

and `curr`

pointing to null and the head of the linked list, respectively. In each iteration, we update the `next`

pointer to keep track of the next node, reverse the `curr`

node's pointer to the `prev`

node, and move `prev`

and `curr`

one step forward. Finally, we return the `prev`

pointer as the new head of the reversed linked list.
For the recursive approach, we recursively reverse the rest of the linked list starting from the second node, and then make the second node point to the first node. We keep doing this until we reach the end of the linked list. The base case is when the current node is null or the next node is null, in which case we return the current node as the new head of the reversed linked list.
Both approaches have a time complexity of O(n) and a space complexity of O(1) for the iterative solution and O(n) for the recursive solution due to the recursion stack.Tags

Linked List

Recursion