merge-k-sorted-lists.sh — zsh

Merge K Sorted Lists

hard
linked-listheappriority-queuedivide-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.