Добавление и удаление элемента из очереди - C#

Узнай цену своей работы

Формулировка задачи:

Есть три очереди, с размерностями 13, 19, 19 Когда добавляю элементы в очереди (в конец), я добавляю сразу во все очереди одновременно. Как только количество элементов достигает 12 — появляется сообщение о том, что индекс находился за границей массива.
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");
            //}
        }
Добавил try catch (то, что закомментировано выше в коде), не работает удаление элементов из начала очереди:
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;
            //}
         }
С добавлением try catch не удаляет элементы вообще. Помогите разобраться, пожалуйста

Решение задачи: «Добавление и удаление элемента из очереди»

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++;           
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.273 из 5