【c++知识】(优先)队列和大小根堆基本操作

发布时间:2024年01月16日

include<algorithm> //必备文件头

priority_queue<int> q;//大根堆 由大到小自动排列

priority_queue<int, vector<int>, greater<int> > q;//小根堆 由小到大自动排列

根堆基操

q.empty() 如果队列为空,则返回true,否则返回false

q.size() 返回队列中元素的个数

q.pop() 删除队首元素,但不返回其值

q.top() 返回队首元素的值,但不删除该元素

q.back() 返回具有最高优先级的元素的值,但不删除该元素(仅适用于优先队列)

q.push() 对queue,在队尾压入一个新元素 对于priority_queue,在基于优先级的适当位置插入新元素

queue<类型> 变量名;//队列的定义

队列基操

q.empty() 如果队列为空,则返回true,否则返回false

q.size() 返回队列中元素的个数

q.pop() 删除队首元素,但不返回其值

q.front() 返回队首元素的值,但不删除该元素(仅适用于queue)

q.push() 对queue,在队尾压入一个新元素 对于priority_queue,在基于优先级的适当位置插入新元素


关于(优先)队列和大小根堆的基本操作先记这些吧,之后有学到的会继续补充 ~

hello感谢观看诶!我是松叶子呀,一个充满好奇心的ENTJ,正在不断学习算法。如果你觉得本文对你有用,就请点赞收藏吧,欢迎关注一起进步:)?

文章来源:https://blog.csdn.net/m0_73246124/article/details/135562918
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。