hard
linked-list
heap
priority-queue
divide-and-conquer
Each row in lists serializes one sorted linked list. Return the values of the merged sorted list. Solve with the same one-current-node-per-list heap used for real ListNode chains.
Constraints
- 0 <= k <= 10000
- 0 <= total values <= 10000
- Each input list is sorted
Follow-up
How would the heap entries change if inputs were actual ListNode heads?
Examples
Example 1
Input: lists = [[1,4,5],[1,3,4],[2,6]]
Output: [1,1,2,3,4,4,5,6]
Example 2
Input: lists = []
Output: []
Example 3
Input: lists = [[]]
Output: []
🔒 5 hidden
Running will execute all 8 cases, including 5 hidden ones.