开发者

C#集合本质之堆栈的用法详解

开发者 https://www.devze.com 2022-12-01 14:07 出处:网络 作者: Darren
在了解集合本质必须要知晓的概念-链表中,我们了解了链表的概念和种类,并且模拟了一个单向链表。本篇体验的堆栈是约束版的链表,只能在栈顶接收新节点和释放节点。堆栈的主要操作是压栈和出栈。压栈是将新节点放在...

在"了解集合本质必须要知晓的概念-链表"中,我们了解了链表的概念和种类,并且模拟了一个单向链表。本篇体验的堆栈是约束版的链表,只能在栈顶接收新节点和释放节点。

堆栈的主要操作是压栈和出栈。压栈是将新节点放在栈顶,出栈是从栈顶取出一个节点,返回新弹出节点的数据项。堆栈也称为后进先出的数据结构。

接着上一篇,写一个派生于List的类来模拟堆栈的压栈和出栈。

namespace LinkedListLibrary
{
    public class StackInheritance : List
    {
        public StackInheritance() : base("stack"){}
        public void Push(object dataValue)
       android {
            InsertAtFront(dataValue);
        }
   python     public object Pop()
        {
            return RemoveFromFront();
        }
    }
}

客户端调用。

        public static void Main(string[] args)
        {
     javascript       StackInheritance stack = new StackInheritance();
            bool aBoolean = true;
            char aChar = 'a';
            int anInt = 12;
开发者_Python学习            string aStr = "hello";
            stack.Push(aBoolean);
            stack.Display();
            stack.Push(aChar);
            stack.Display();
            stack.Push(anInt);
            stack.Display(android);
            stack.Push(aStr);
            stack.Display();
            try
            {
                while (true)
                {
                    object removedObject = stack.Pop();
                    Console.WriteLine(removedObject + "被弹出~~");
                    stack.Display();
                }
            }
            catch (EmptyListException emptyListException)
            {                
                Console.Error.WriteLine(emptyListExceptiphpon.StackTrace);
            }
            Console.ReadKey();
        }

C#集合本质之堆栈的用法详解

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号