Given the head of a singly linked list, reverse the list, and return the reversed list. Example: Input: head = [1,2,3,4,5] Output: [5,4,3,2,1] Explanation: The list is reversed end-to-end. Pattern focus: In-Place Reversal (iterative using dummy or two pointers).
head = ListNode
return ListNode
Example 1:
Input:
head = [1,2,3,4,5]
Output:
[5,4,3,2,1]
Explanation:
All pointers reversed; tail becomes new head.
Example 2:
Input:
head = []
Output:
null
Explanation:
Empty list stays empty.