private static void MinStackTest()
        {
            var minStack = new MinStack <int>(20);

            minStack.Push(1);
            minStack.PrintStack();

            minStack.Push(20);
            minStack.Push(30);
            minStack.Push(40);
            minStack.PrintStack();

            minStack.Push(4);
            minStack.PrintStack();

            minStack.Push(1);
            minStack.PrintStack();

            minStack.Pop();
            minStack.PrintStack();

            minStack.Pop();
            minStack.PrintStack();

            minStack.Pop();
            minStack.PrintStack();

            minStack.Pop();
            minStack.PrintStack();
        }
        private static void MinStackPersonTest()
        {
            var minStack = new MinStack <MyPerson>(5);
            var per1     = new MyPerson()
            {
                Name = "Bob",
                Age  = 53
            };

            var per2 = new MyPerson()
            {
                Name = "Alice",
                Age  = 32
            };

            var per3 = new MyPerson()
            {
                Name = "Tim",
                Age  = 25
            };

            var per4 = new MyPerson()
            {
                Name = "Jack",
                Age  = 21
            };

            minStack.Push(per1);
            minStack.PrintStack();

            minStack.Push(per3);
            minStack.PrintStack();

            minStack.Push(per2);
            minStack.PrintStack();

            minStack.Push(per4);
            minStack.PrintStack();

            minStack.Pop();
            minStack.PrintStack();

            minStack.Pop();
            minStack.PrintStack();

            minStack.Pop();
            minStack.PrintStack();
        }