Example #1
0
        public void push(T data)
        {
            stackNode newNode = new stackNode(data);

            if (isEmpty())
            {
                Top = newNode;
            }
            else
            {
                newNode.next = Top;
                Top          = newNode;
            }
        }
Example #2
0
        public T pop()
        {
            stackNode temp = null;

            if (isEmpty())
            {
                Console.WriteLine("stack is empty");
            }
            else
            {
                temp = Top;
                Top  = Top.next;
            }
            return(temp.data);
        }
Example #3
0
        public void printStack()
        {
            if (isEmpty())
            {
                Console.WriteLine("stack is empty. no data ot print");
            }
            stackNode nextNode = Top;
            var       data     = nextNode.data.GetType().GetField("value").GetValue(nextNode.data);

            Console.Write(" " + data.ToString());

            while (nextNode.next != null)
            {
                nextNode = nextNode.next;
                var data1 = nextNode.data.GetType().GetField("value").GetValue(nextNode.data);
                Console.Write(" " + data1.ToString());
            }

            Console.WriteLine("  Next");
        }