繁体   English   中英

STL C++中Priority_queue的向量

[英]Vectors to Priority_queue in STL c++

如何将向量 v 转换为 priority_queue pq? 就像我们可以做的那样-

for(int i=0;i<(int)v.size();i++) pq.push(v[i]);

但是有没有可能让它更短更简洁?

priority_queue<int>pq(begin(stones),end(stones));

如果您使用 vector 作为内部容器(这是默认值),那么您可以简单地使用以下构造函数:

 template< class Alloc > priority_queue( const Compare& compare, const Container& cont, const Alloc& alloc );

否则,您可以使用接受一对迭代器的构造函数:

 template< class InputIt > priority_queue( InputIt first, InputIt last, const Compare& compare = Compare(), Container&& cont = Container() );

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM