# Definition for singly-linked list.
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
import heapq
class Solution:
def mergeKLists(self, lists: List[ListNode]) -> ListNode:
faker = ListNode('skt')
cur = faker
head = []
for i in range(len(lists)):
while lists[i] :
heapq.heappush(head,(lists[i].val,i))
lists[i] = lists[i].next
#head等于从小到大所有节点的值
print(head)
while head != []:
val,index = heapq.heappop(head)#依次弹出最小的
cur.next = ListNode(val)#
cur = cur.next
return faker.next
Leetcode刷题记录——23. 合并K个排序链表
最新推荐文章于 2023-03-13 20:23:49 发布