C++_STL_优先级队列priority_queue

最大值优先级队列priority_queue<int, vector, less>

默认是// priority_queue p1; // 默认是 最大值优先级队列
这个队列是默认把最大值放在前边。

void main8()
{
	priority_queue<int> p1; //   默认是 最大值优先级队列
	//priority_queue<int, vector<int>, less<int>> p2;
	//priority_queue<int> p1; //默认是 最大值优先级队列 
    //priority_queue<int, vector<int>, less<int> > p1; //相当于这样写
	//priority_queue<int, vector<int>, greater<int>> p3; //最小值优先级队列
	p1.push(33);
	p1.push(11);
	p1.push(22);
	p1.push(55);
	cout << "队头元素" << p1.top() << endl;
	cout << "队列的大小" << p1.size() << endl;
	while (p1.size() > 0)
	{
		cout << p1.top() << "  ";
		p1.pop();
	}
}

输出结果是:
在这里插入图片描述

最小值优先队列 priority_queue<int, vector, greater> p3; //最小值优先级队列

记忆方式greater(),最大的放在最后。
void main9()
{
// priority_queue p1; // 默认是 最大值优先级队列
//priority_queue<int, vector, less> p2;
//priority_queue p1; //默认是 最大值优先级队列
//priority_queue<int, vector, less > p1; //相当于这样写
priority_queue<int, vector, greater> p3; //最小值优先级队列
p3.push(33);
p3.push(11);
p3.push(22);
p3.push(55);
cout << “队头元素” << p3.top() << endl;
cout << “队列的大小” << p3.size() << endl;
while (p3.size() > 0)
{
cout << p3.top() << " ";
p3.pop();
}
}
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值