示例#1
0
        public void Push(double item)// увеличиваем стек
        {
            NodeDMAdouble node = new NodeDMAdouble(item);

            node.Next = head; // переставляем верхушку стека на новый элемент
            head      = node;
            count++;
        }
示例#2
0
        public double Pop()
        {
            // если стек пуст, выбрасываем исключение
            if (IsEmpty)
            {
                throw new InvalidOperationException("Stack is Empty");
            }
            NodeDMAdouble temp = head;

            head = head.Next; // переставляем верхушку стека на следующий элемент
            count--;
            return(temp.Data);
        }
示例#3
0
        public void Add(double data)
        {
            NodeDMAdouble node = new NodeDMAdouble(data);

            if (head == null)
            {
                head = node;
            }
            else
            {
                tail.Next = node;
            }

            tail = node;
            Length++;
        }
示例#4
0
        public string DoubleStackToString()
        {
            int    L   = 0;
            string str = String.Empty;

            string[]      st = new string[0];
            NodeDMAdouble p  = head;

            while (p != null)
            {
                Array.Resize <string>(ref st, ++L);
                st[L - 1] = p.Data.ToString();
                p         = p.Next;
            }
            foreach (string s in st)
            {
                str += s + " ";
            }
            return(str);
        }
示例#5
0
        public string DoubleListToString()                   // Вывод списка
        {
            string[]      st  = new string[0];
            string        str = String.Empty;
            int           L   = 0;
            NodeDMAdouble p   = head;

            if (p != null)
            {
                do
                {
                    Array.Resize <string>(ref st, ++L);
                    st[L - 1] = p.Data.ToString();
                    p         = p.Next;
                }while (p != null);
            }

            foreach (string s in st)
            {
                str += s + " ";
            }
            return(str);
        }
示例#6
0
 public void Clear()
 {
     count = 0;
     head  = null;
 }