Reverse Linked List

Given the head of a singly linked list, reverse the list, and return the reversed list.

Follow up: A linked list can be reversed either iteratively or recursively. Could you implement both?

Example 1
[1] -> [2] -> [3] -> [4] -> [5] -> null
---
[5] -> [4] -> [3] -> [2] -> [1] -> null
Inputhead = [1,2,3,4,5]
Output[5,4,3,2,1]
Reversing the list changes the order from [1,2,3,4,5] to [5,4,3,2,1].
Example 2
[1] -> [2] -> null
---
[2] -> [1] -> null
Inputhead = [1,2]
Output[2,1]
Reversing the list changes the order from [1,2] to [2,1].

Constraints

  • The number of nodes in the list is the range [0, 5000].
  • -5000 <= Node.val <= 5000

Asked at 34 companies

</>

Your Solution

(Ctrl/Cmd + Enter)

Switching Language

Loading template...

Loading...

Sign in to save your progress

AI code evaluation

Get a correctness verdict, missed edge cases, and complexity analysis of your solution.

Sign in to evaluate