今天的题目是23. 合并K个排序链表
我表示需要回去继续打基础这个不看题解连思路都没有
class Solution:
def mergeKLists(self, lists: List[ListNode]) -> ListNode:
import heapq
dummy = ListNode(0)
p = dummy
head = []
for i in range(len(lists)):
if lists[i] :
heapq.heappush(head, (lists[i].val, i))
lists[i] = lists[i].next
while head:
val, idx = heapq.heappop(head)
p.next = ListNode(val)
p = p.next
if lists[idx]:
heapq.heappush(head, (lists[idx].val, idx))
lists[idx] = lists[idx].next
return dummy.next
Your runtime beats 70.36 % of python3 submissions
Your memory usage beats 46.84 % of python3 submissions (16.4 MB)