题解 | 【模板】堆 pyhton

【模板】堆

https://www.nowcoder.com/practice/13f61c8c92404f5ea5d6fa4c692869fb

import sys

# for line in sys.stdin:
#     a = line.split()
#     print(int(a[0]) + int(a[1]))
# +,,
"""
   堆 heapq  默认实现的是最小堆
   实现最大堆 可以插入负值  取出时候添加负号

"""
import heapq

def solve():
    arr=[]
    n =int(input())
    for i in range(n):
        line =input().split(" ")
       #print(arr)
        if line[0]=="push":
            heapq.heappush(arr,-int(line[1]))
        elif  line[0]=="top":
            if len(arr)>0:
                print(-arr[0])
            else:
                print("empty")
        elif  line[0]=="pop":
            if len(arr)>0:
                a=-heapq.heappop(arr)
                print(a)
            else:
                print("empty")
        
solve()

全部评论

相关推荐

09-21 21:14
门头沟学院
否极泰来来来来:和他说:这里不好骂你,我们加个微信聊
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务