Reorder List
MediumP2Coding
Given the head of a singly linked list L0 -> L1 -> ... -> Ln-1 -> Ln, reorder it in place to L0 -> Ln -> L1 -> Ln-1 -> L2 -> Ln-2 -> ... and return the head. You may only change the next pointers, not the node values. A list node has val and next. The ListNode class is already defined for you.
Example 1
- Input
- head = [1,2,3,4]
- Output
- [1,4,2,3]
Example 2
- Input
- head = [1,2,3,4,5]
- Output
- [1,5,2,4,3]
Example 3
- Input
- head = [1]
- Output
- [1]
Constraints
- 0 <= number of nodes <= 5 * 10^4
- 1 <= Node.val <= 1000
Hints
Give it a real attempt first. Run shows which examples fail.
Saved automatically
Run checks the 3 visible tests, Submit all 10. ⌘Enter runs, ⌘⇧Enter submits.