Форум программистов, компьютерный форум CyberForum.ru

Возможна ли реализация max_element и remove_if с использованием priority_queue? - C++

Восстановить пароль Регистрация
 
Sand_Saven
0 / 0 / 0
Регистрация: 24.10.2015
Сообщений: 4
29.05.2016, 21:37     Возможна ли реализация max_element и remove_if с использованием priority_queue? #1
Доброго времени суток. Возник вопрос. возможна ли реализация max_element и remove_if с использованием priority_queue?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2016, 21:37     Возможна ли реализация max_element и remove_if с использованием priority_queue?
Посмотрите здесь:

Возможна ли перегрузка функций C (СИ)
Реализация слоеного списка C (СИ)
Возможна ли переробка программы C (СИ)
Реализация LFSR C (СИ)
C (СИ) Реализация алгоритма base64
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
HighPredator
 Аватар для HighPredator
5342 / 1725 / 320
Регистрация: 10.12.2010
Сообщений: 5,108
Записей в блоге: 3
30.05.2016, 08:57     Возможна ли реализация max_element и remove_if с использованием priority_queue? #2
Вопрос непонятен. Каков контекст: C++ STL или речь идет о самописных сишных аналогах? Что значит "с исползованием"? Кто кого использует? Перечисленные функции используют очередь или наоборот?
Sand_Saven
0 / 0 / 0
Регистрация: 24.10.2015
Сообщений: 4
30.05.2016, 11:19  [ТС]     Возможна ли реализация max_element и remove_if с использованием priority_queue? #3
речь идет о STL;
Вот например можно использовать max_element на priority_queue как на DVector:
DVector v={ { 1, 1 }, { 2, 1 }, { 5, 6 } };
cout << *max_element(v.begin(), v.end());
notAll
176 / 65 / 16
Регистрация: 27.05.2016
Сообщений: 182
Завершенные тесты: 2
30.05.2016, 11:42     Возможна ли реализация max_element и remove_if с использованием priority_queue? #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
template<typename T>
T max_elem_pq(std::priority_queue<T> pq)
{
    std::vector<int> v;
    for (int i = 0; i < pq.size(); ++i, pq.pop())
        v.push_back(pq.top());
    return *std::max_element(v.begin(), v.end());
}
 
int main()
{
    std::priority_queue<int> q{std::less<int>(), {1,2,3,9,7}};
    std::cout << "Max el: " << max_elem_pq(q);
}
Добавлено через 1 минуту

Не по теме:

А что такое DVector?

Sand_Saven
0 / 0 / 0
Регистрация: 24.10.2015
Сообщений: 4
30.05.2016, 13:12  [ТС]     Возможна ли реализация max_element и remove_if с использованием priority_queue? #5
Спасибо, помогло.
Yandex
Объявления
30.05.2016, 13:12     Возможна ли реализация max_element и remove_if с использованием priority_queue?
Ответ Создать тему
Опции темы

Текущее время: 23:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru