我只是实现一个逻辑,其中一个整数之前被排入队列,搜索向量中的队列循环并将整数排入队列中具有最小大小的队列。以下代码显示了操作。
#include <vector>
#include <queue>
std::vector<std::queue<int> > q
int min_index = 0;
std::size_t size = q.size();
for( i=0; i<size; i++){ //accessing loop of queues
if(q[min_index].size() > q[i].size())
min_index = i; // Now q[min_index] is the shortest queue
}
q[min_index].push(int)
现在另外我想扩展我的范例,条件是整数应该继续在最短队列中排队,而条件为真的最短队列的大小小于或等于队列循环中任何另一个队列的大小。
想做如下所示的代码
#include <vector>
#include <queue>
std::vector<std::queue<int> > q
int min_index = 0;
std::size_t size = q.size();
for( i=0; i<size; i++){ //accessing loop of queues
if(q[min_index].size() > q[i].size())
min_index = i
while(q[min_index].size <= q[some_other_index].size() )
{
q[min_index].push(int);
}
我想我应该找到循环的连续最小值并在while循环中进行比较?但我不知道如何继续寻找连续的最小值。
继续这个问题,因为我没有明确地 比较向量中的队列大小