“Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity.”——这是 LeetCode 上的一道 Hard 级别的题,是说将多个已经排序的有序序列合并成一个大的有序序列。使用优先队列的方式完成了这个题目,时间应该是 O(nm)。
解题思路
主要考虑的方向当然是怎么利用多个序列已经排好序这个特点,所以先把每个 List 的头拿出来放在队列中。每次都取出最小值并把这个子序列的下一个值加入队列中,循环操作直到所有的队列都被处理完。