题目:
合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。
示例:
输入:
[
1->4->5,
1->3->4,
2->6
]
输出: 1->1->2->3->4->4->5->6
算法实现:
class ListNode:
def __init__(self, x):
self.val = x
self.next = None
class Solution:
def mergeTwoLists(self, lists):
self.sets = []
result = temp = ListNode(0)
for each in lists:
while each:
self.sets.append(each.val)
each = each.next
for x in sorted(self.sets):
temp.next = ListNode(x)
temp = temp.next
return result.next