2015-04-15 108 views
1

我需要按升序排列号码。
我使用优先级队列,它首先存储较高的值,即按降序排列。按升序排列的STL优先级队列

priority_queue<int>q; 

是否可以订购它们增加?
我能做些什么来使数据订单增加?

回答

2

要保存在递增的顺序值,你只需要改变优先级队列的声明:

priority_queue<int, vector<int>, greater<int> >q; 
2

以防万一,在C++ 14,你可以这样做:

priority_queue<int, vector<int>, greater<>> q; 

你可以避免greater<int>。这是新的方式。有关 的更多信息,请参阅What are transparent comparators?