Найти максимальный элемент Очереди (Queue) и вставить после него «0» - C#
Формулировка задачи:
Доброго времени суток. Задание создать консольное приложение и "Найти максимальный элемент очереди или стека вставить после него «0»". Массив использовать нельзя, делать через промежуточный стек или очередь. Вопрос - как сравнить элементы очереди. не надо целиком рабочую программу, подскажите куда думать.
Решение задачи: «Найти максимальный элемент Очереди (Queue) и вставить после него «0»»
textual
Листинг программы
- static void Main(string[] args)
- {
- Console.WriteLine("Введите количество элементов");
- int n = Convert.ToInt32(Console.ReadLine());
- Queue<int> q = new Queue<int>(n);
- for (int i = 0; i < n; i++)
- {
- Console.WriteLine("Введите элемент № " + i);
- int elm = Convert.ToInt32(Console.ReadLine());
- q.Enqueue(elm);
- }
- Queue<int> q1 = new Queue<int>();
- int max = int.MinValue;
- while (q.Count > 0)
- {
- int elm = q.Dequeue();
- if (elm > max) max = elm;
- q1.Enqueue(elm);
- }
- while (q1.Count > 0)
- {
- int elm = q1.Dequeue();
- q.Enqueue(elm);
- if (elm == max) q.Enqueue(0);
- }
- while (q.Count > 0) Console.Write("{0} ", q.Dequeue());
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д