1
所以我有列表被添加到堆中;例如:python heapq:如何使用列表列表中的第n個元素對堆進行排序?
n = [[1, 5, 93],
[2, 6, 44],
[4, 7, 45],
[6, 3, 12]]
heapq.heapify(n)
print(n)
根據列表的第一個元素進行比較和排序。
我的問題是,我如何排序heapq,因此它比較每個列表的第三個元素?例如,上面的列表就會從heapq順序訪問:
[[6, 3, 12],
[2, 6, 44],
[4, 7, 45],
[1, 5, 93]]
'sorted(your_list_of_lists,key = lambda x:x [2])' – DyZ
您是在尋找「排序」還是您有一些插入並刪除? – AChampion
我不能使用其他任何東西。我對算法的時間複雜性非常緊張,所以我需要爲我節省一些大的O.有什麼辦法讓heapq本身以不同的順序存儲列表? (PS:我也編輯了這篇文章,以澄清一些事情) –