public void push(T data) { stackNode newNode = new stackNode(data); if (isEmpty()) { Top = newNode; } else { newNode.next = Top; Top = newNode; } }
public T pop() { stackNode temp = null; if (isEmpty()) { Console.WriteLine("stack is empty"); } else { temp = Top; Top = Top.next; } return(temp.data); }
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"); }