Problem · Linked List
Reverse a Singly Linked List
Learn this problemProblem statement
Given the head head of a singly linked list, reverse the direction of every next pointer and return the new head.
The returned list must contain exactly the original nodes and values in reverse order.
Function
reverseList(head: ListNode) → ListNodeExamples
Example 1
head = [1,2,3,4,5]return = [5,4,3,2,1]Every link is reversed, making 5 the new head and 1 the new tail.
Example 2
head = [1,2]return = [2,1]The second node becomes the head and points to the first node.
Example 3
head = [7]return = [7]A one-node list is already reversed.
Constraints
1 <= number of nodes <= 10^5.-10^9 <= node.val <= 10^9.- The input list is finite and contains no cycle.