c#数据结构———栈

栈是栈是受约束的链表,栈是一种后进先(LIFO)出的数据结构。

using System;<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

using LinkedListLibrary;

//栈是受约束的链表

//栈底结点的链接成员社为null

namespace StackInheritanceLibrary

{

     public class StackInheritance:List

     {

         public StackInheritance():base("stack")

         {

         }

         public void Push(object dataValue)//压栈

         {

              InsertAtFront(dataValue);

         }

         public object Pop()//出栈

         {

              return RemoveFromFront();

         }

     }

}

第二种实现方法

using System;

using LinkedListLibrary;

 

//通过合成来重用List

namespace StackCompositionLibrary

{

     public class StackComposition:List

     {

         public List stack;

         public StackComposition()

         {

              stack = new List("stack");

         }

         public void Push(object dataValue)

         {

              stack.InsertAtFront(dataValue);

         }

         public object Pop()

         {

              return stack.RemoveFromFront();

         }

         public bool IsEmpty()

         {

              return stack.IsEmpty();

         }

         public void Print()

         {

              stack.Print();

         }

     }

}

队列实现

using System;

using LinkedListLibrary;

namespace QueueInheritanceLibrary

{

     public class QueueInheritance:List

     {

         public QueueInheritance():base("queue")

         {

         }

         public void Enqueue(object dataValue)

         {

              InsertAtBack(dataValue);

         }

         public object Dequeue()

         {

              return RemoveFromFront();

         }

     }

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值