0 / 0 / 0
Регистрация: 10.12.2012
Сообщений: 37
1

queue удаление из очереди

18.11.2013, 20:20. Показов 3508. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Создать однонаправленную очередь с числами в диапазоне от –50 до +50.
Удалить из очереди все элементы, расположенные до минимального
элемента очереди.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>       
#include <queue>          
#include <conio.h>
int main ()
{
  std::queue<int> a;
  for(int i=-50;i<51;i++)
      a.push (i);
  int min=a.front();
  while (!a.empty())
  {
    if(a.front()<min)min=a.front();
    printf("%d ",a.front());
    a.pop();
  }
  _getch();
  return 0;
}
Я нахожу минимальный элемент, но как удалить все что было до него не представляю, подскажите.

Добавлено через 35 минут
!!!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.11.2013, 20:20
Ответы с готовыми решениями:

Удаление элемента из очереди (queue) по указанному индексу
Реализовать удаление элемента из очереди по указанному индексу(queue)

Сортировка очереди (queue)
Здравствуйте, нужно отсортировать числовую последовательность в очереди по возрастанию с помощью...

Как удалить все элементы из очереди (queue)
Есть очередь queue и в ней элементы, как удалить их все чтобы очередь осталась пустой?

Использование очереди (queue) одного класса в другом
Использование очереди (queue) одного класса в другом проблема в следующем есть класс Hospital, в...

3
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
18.11.2013, 20:34 2
для начала, исходя из вашего задания и вашего кода, вы не до конца его сами поняли. подумайте над заданием еще раз

Добавлено через 4 минуты
подскажу. в вашем случае нечего удалять всегда
0
0 / 0 / 0
Регистрация: 10.12.2012
Сообщений: 37
18.11.2013, 21:09  [ТС] 3
Цитата Сообщение от retmas Посмотреть сообщение
для начала, исходя из вашего задания и вашего кода, вы не до конца его сами поняли. подумайте над заданием еще раз

Добавлено через 4 минуты
подскажу. в вашем случае нечего удалять всегда
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>       
#include <queue>          
#include <conio.h>
int main ()
{
  std::queue<int> a;
  for(int i=-50;i<51;i++)
      a.push (i);
  int min=a.front();
 
  while (!a.empty())
  {
    if(a.front()<min)a.pop();
  }
  while (!a.empty()){
      printf("%d ",a.front());
      a.pop();
  }
  _getch();
  return 0;
}
как я понял должно получиться, что-то подобное но выводится пустая строка (
0
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
18.11.2013, 21:22 4
у вас ничего не выводится.
у вас бесконечный цикл
C++
1
2
3
4
while (!a.empty())
{
    if(a.front()<min)a.pop();
}
а вообще могу повторить предыдущий свой пост)
0
18.11.2013, 21:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.11.2013, 21:22
Помогаю со студенческими работами здесь

STL, Queue (в очереди изменить один элемент на другой?)
Реально ли в очереди изменить один элемент на другой? Использовать другую очередь естественно...

Задания на стеки/очереди (без шаблонных классов stack, queue)
Помогите, пожалуйста. Нужно добавить в очередь нечетные целые числа от -3 до 3. Все числа из...

Создание очереди и удаление элемента очереди по усмотрению пользователя
Вот код он создает очередь и должен удалить элемент очереди по усмотрению пользователя проблема...

Добавить в очередь среднее арифметическое элементов очереди, не нарушая упорядоченности.(подключать <queue> нельзя)
Дана очередь с вещественными числами, упорядоченными по убыванию. Добавить в очередь среднее...


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

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

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