Добавление и удаление элемента из очереди - C#
Формулировка задачи:
Есть три очереди, с размерностями 13, 19, 19
Когда добавляю элементы в очереди (в конец), я добавляю сразу во все очереди одновременно. Как только количество элементов достигает 12 — появляется сообщение о том, что индекс находился за границей массива.
Добавил try catch (то, что закомментировано выше в коде), не работает удаление элементов из начала очереди:
С добавлением try catch не удаляет элементы вообще. Помогите разобраться, пожалуйста
public void Enqueue(object v) // добавление в конец очереди { int i = 0; //try //{ while (listt[i] != null) { if (i == capacity - 1) capacity += 1; i++; } listt[i] = v; count++; //} //catch //{ // Console.WriteLine("NO"); //} }
public object Dequeue() // возврат с удалением { object elem; elem = listt[0]; int i = 0; //try //{ while (listt[i + 1] != null) { listt[i] = listt[i + 1]; i++; } listt[i] = null; count--; return elem; //} //catch //{ // Console.WriteLine("No"); //return 0; //} }
Решение задачи: «Добавление и удаление элемента из очереди»
textual
Листинг программы
public void Enqueue(object v) // добавление в конец очереди { int i = 0; while (listt[i] != null) { if (i == capacity - 1) capacity += 1; i++; if (i >= capacity) break; } listt[i] = v; count++; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д