2017-11-28 5 views
0

누군가 내가 대기열의 대기열을 정렬 할 수 있음을 알고있었습니다. 대기열의 벡터에 어떤 항목을 넣었습니까? 큐 벡터 정리대기열의 벡터 정렬

queue<int> sortedQueue(queue<queue<int>> mainQueue,int countOfChild) 
{ 
    queue<int> sorted; 
    vector<queue<int>> childQueues; 
    for (int i = 0; i < countOfChild; i++) 
    { 
     queue<int> x = mainQueue.front(); 
     mainQueue.pop(); 

     childQueues.push_back(x); 
    } 
    //TODO 
} 
+0

대기열의 데이터 예 및 정렬 방법을 제공하십시오. –

+0

정렬은 대개 비교를 위해보다 작음 연산자'<'를 사용하여 수행됩니다. 자, 2 개의 대기열에 대해, 다른 하나보다 적은 것을 만드는 것은 무엇입니까? 그걸 알고있을 때 오버로딩 된'operator <'함수로 그것을 구현할 수 있으며 벡터와 함께 ['std :: sort'] (http://en.cppreference.com/w/cpp/algorithm/sort)를 호출하면됩니다 . –

+0

대기열의 데이터가 정수이고 오름차순으로 정렬하려고합니다. 예 : firstQueue : 5 6 9 10 secondQueue : 1 2 3 최종 결과 : 1 2 3 5 6 9 10 –

답변

1

a_vector_of_queuesstd::vector<std::queue<T>>이고 Tint 또는 std::string처럼 정의 < 연산자를 갖는 임의의 유형이다 std::sort(a_vector_of_queues.begin(), a_vector_of_queues.end()) 입력처럼 쉽다.