I have a paradigm where a integer before gets enqueued to a queue in a vector, the loop of queues is searched and integer is enqueued to a queue which has minimum size among the queues. the following code shows the operation.
#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)
next i am trying to extend my paradigm with the condition, that the integers should be enqueued to the shortest queue until it becomes maximum size among the queues.
do{
q[min_index].push(int)
} while(q[min_index].size > queue sizes in the vector loop except this queue )
how to search the loop of queue sizes except this queue
any ideas please help!!
Simply calculate the max queue size as well as the minimum index: