Зациклить очередь (полностью использовать место во внутреннем массиве) - C#
Формулировка задачи:
Есть у кого идеи , как ее можно зациклить ?
using System; namespace queue111 { class Queue { int[] que; int head; int counter; public Queue(int size) { que= new int [size]; head=0; counter = 0; } public void Push(int elem) { if (counter == que.Length) { Console.WriteLine("Очередь заполнена"); return; } que[counter] = elem; counter++; } public int Pop() { if (counter==0) { Console.WriteLine("Очередь пуста"); return -1; } int elem = que[head]; head++; return elem; } public bool IsEmpty() { return counter == head; } public int Peek() { return que[head]; } } class QueueDemo { static void Main() { Queue que1 = new Queue(10); que1.Push(3); que1.Push(9); que1.Push(5); que1.Push(3); que1.Push(9); Console.WriteLine("Вершина очереди:"); Console.WriteLine(que1.Peek()); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Сама очередь"); while (!que1.IsEmpty()) { Console.WriteLine(que1.Pop()); } } } }
Решение задачи: «Зациклить очередь (полностью использовать место во внутреннем массиве)»
textual
Листинг программы
while (!que1.IsEmpty()) { Console.WriteLine(que1.Pop()); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д