Реализовать очередь с помощью односвязного списка - C#

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

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

Утро доброе, есть очередь реализованная с помощью массива. А нужно сделать, с помощью односвязного списка. Помогите пожалуйста переделать)
namespace Lab_2
{
    class OcherMas
    {
        class Deistvia
        {
            private int top;
            public int[] a;
            public Deistvia(int n)
            {
                a = new int[n];
                top = 0;
            }
            public void push(int val)
            {
                a[top] = val;
                top++;
            }
            public int pop() {
                top--;
                return a[top];
            }
        }
 
        static void Main(string[] args)
        {
            int sum=0,r;
            int n = Convert.ToInt32(Console.ReadLine());
            Deistvia mas = new Deistvia(n);
            for (int i = 0; i < n;i++)
            {
                mas.push(Convert.ToInt32(Console.ReadLine()));
            }
 
            Console.WriteLine();
            
            for (int i = 0; i < n; i++)
            {
                r = mas.pop();
                Console.WriteLine(r.ToString());
                sum = sum + r;
            }
            Console.WriteLine();
            Console.WriteLine(sum);
        }
    }
}
Ну и интерфейс)
namespace Lab_2
{
    interface IOchered
    {
         void push(int val);
         int pop();
    }
    
}
хотя бы идею, как это сделать)

Решение задачи: «Реализовать очередь с помощью односвязного списка»

textual
Листинг программы
public T Front
        {
            get
            {
                if (Empty)
                    throw new InvalidOperationException();
                return _head.Data;
            }
        }

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


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

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

9   голосов , оценка 3.667 из 5
Похожие ответы