自己动手写一个 堆栈

 1 /// <summary>
 2        /// 一个简单的 堆栈 
 3        /// </summary>

 4        public class myStack
 5        {
 6            private myNode topNode = null;
 7            private int count = 0;
 8
 9            /// <summary>
10            /// 出栈
11            /// </summary>
12            /// <returns></returns>

13            public object Pop()
14            {
15                object objPop = null;
16                if (topNode == nullreturn null;
17                
18                objPop = topNode.Data;
19                topNode = topNode.Next;
20
21                count--;
22                return objPop;
23            }

24
25            /// <summary>
26            /// 栈的元素个数
27            /// </summary>

28            public int Count{   get{return count;}  }
29
30            /// <summary>
31            /// 进栈
32            /// </summary>
33            /// <param name="obj"></param>

34            public void Push(object obj)
35            {
36                myNode newNode = new myNode();
37                newNode.Data = obj;
38                newNode.Next = topNode;
39
40                count++;
41                topNode = newNode;
42            }

43
44            class myNode
45            {
46                private object data;
47                private myNode next;
48
49                public myNode Next
50                {
51                    get return next; }
52                    set { next = value; }
53                }

54
55                public object Data
56                {
57                    get return data; }
58                    set { data = value; }
59                }

60            }

61        }
原文地址:https://www.cnblogs.com/sskset/p/715675.html