1642 / 1091 / 487
Регистрация: 17.07.2012
Сообщений: 5,345
1

Как задать приоритет priority_queue?

05.05.2015, 16:32. Показов 5159. Ответов 3
Метки нет (Все метки)

Здравствуйте. Хочу понять как в очереди задавать приоритет.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <queue>
#include <iostream>
#include <functional>
#include <stdlib.h>
#include <ctime>
 
 
int main()
{
    srand(time(NULL));
    std::priority_queue<int> q {std::less<int>()};
    for (int i=0;i<4;i++) q.push(rand()%51);
    while (!q.empty())
    {
        std::cout<<q.top()<<std::endl;
        q.pop();
    }
}
Такой код не пашет как надо:числа выводятся в порядке убывания. А когда вот так создавал очередь
C++
1
std::priority_queue<int> q {std::greater<int>()};
то вообще ошибка компиляции. Помогите пожалуйста разобраться.

Добавлено через 2 минуты
Компилятор GCC...
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.05.2015, 16:32
Ответы с готовыми решениями:

Как задать ключ по которому надо будет сортировать в priority_queue
Доброго времени суток форумчане. Хочу сделать так чтобы priority_queue понимал по какому ключу...

Неоднозначность преобразований. Как задать "приоритет" преобразований
В моем классе есть три функции преобразования (int, double, char), и все они мне нужны. Но мне...

Priority_queue
У меня есть задача. В файле содержаться строки, в которых указана фамилия и 5 оценок. Программа...

Как задать приоритет программе
сабж

3
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
05.05.2015, 16:51 2
Лучший ответ Сообщение было отмечено Новичок как решение

Решение

C++
1
2
using queue_type = std::priority_queue<int, std::vector<int>, std::greater<int>>;
queue_type q;
1
1642 / 1091 / 487
Регистрация: 17.07.2012
Сообщений: 5,345
05.05.2015, 17:03  [ТС] 3
retmas, спасибо, работает. А зачем вектор используется?
0
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
05.05.2015, 17:09 4
Цитата Сообщение от Новичок Посмотреть сообщение
А зачем вектор используется?
внутреннее представление. можете использовать другой контейнер. например deque. главное, чтоб он удовлетворял определенным требованиям. в любом нормальном справочнике/документации к priority_queue эти требования описаны
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.05.2015, 17:09
Помогаю со студенческими работами здесь

Как задать приоритет процесса
использую Batch Script Generator v1.3 для создания bat скрипта, который должен запускать рендер...

Как задать малый приоритет процессу при его запуске из BAT-файла?
привет назрела ситуация при которой моя программа на Microsoft Quick Basic v.4.50 запускаясь из...

Задать приоритет потокам
есть программа в которой имеется 6 потоков 1 producer (ему не нужно задавать приоритет) и 5...

Задать приоритет процесса в C++ WinAPI
Доброго времени суток. Пытаюсь изменить приоритет процесса но ничего не выходит... Может у кого то...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru