【题目描述】
Mergeksorted linked lists and return it as one sorted list.
Analyze and describe its complexity.
合并k个排序链表,并且返回合并后的排序链表。尝试分析和描述其复杂度。
【题目链接】
www.lintcode.com/en/problem/merge-k-sorted-lists/
【题目解析】
每次求最小值的k个元素其实在两次求解之间只会变化1个数,这就表明我们可以用“最小堆”这种数据结构,来优化这个求解的过程,即一开始就将所有链表的第一个元素放入最小堆中,每次从最小堆中取出最小值,将其添加到答案的最后,并将其所属链表的下一个元素加入到最小堆当中。
【参考答案】