用户操作
[即时聊天] [发私信] [加为好友]
VinceID:vincent0203
7888次访问,排名13628(1),好友4人,关注者5人。
好学,进取,向上
vincent0203的文章
原创 24 篇
翻译 0 篇
转载 15 篇
评论 3 篇
最近评论
xiongxuanwen:写的很好,很清晰!
wyx19870921:hao ya !!!!!thanks
blue_lily:Nice code
文章分类
收藏
    相册
    Asp.Net For AJAX
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    转载 数据结构之堆栈收藏

    新一篇: 数据结构之队列 | 旧一篇: 谈谈C#中的接口

    using System;
    
    
    
    namespace List
    
    {
    
     /// <summary>
    
     /// 堆栈类
    
     /// </summary>
    
     
    
     public class CStack
    
     { 
    
    
    
    
    
      //调用链表类
    
      private  Clist m_List;
    
      
    
    
    
      public CStack()
    
      {
    
    
    
      //构造函数
    
    
    
    
    
       m_List=new Clist();
    
    
    
      }
    
    
    
      /// <summary>
    
      /// 压入堆栈
    
      /// </summary>
    
      
    
      public void Push(int PushValue)
    
      {
    
          //参数: int PushValue 压入堆栈的数据
    
    
    
          m_List.Append (PushValue);
    
               
    
      }
    
    
    
      /// <summary>
    
      /// 弹出堆栈数据,如果为空,则取得 2147483647 为 int 的最大值;
    
      /// </summary>
    
      
    
      public int Pop()
    
      {
    
      //功能:弹出堆栈数据 
    
    
    
      int PopValue;
    
       
    
       if (!IsNullStack())
    
       {
    
    
    
        //不为空堆栈
    
    
    
        //移动到顶
    
    
    
     
    
    
    
        MoveTop();
    
    
    
        //取得弹出的数据
    
        PopValue=GetCurrentValue();
    
    
    
       //删除
    
    
    
        Delete();
    
        return PopValue;
    
     
    
       }
    
    
    
       //  空的时候为 int 类型的最大值
    
    
    
       return 2147483647;
    
      }
    
    
    
      /// <summary>
    
      /// 判断是否为空的堆栈
    
      /// </summary>
    
      
    
      public bool IsNullStack()
    
      {   
    
       
    
       if ( m_List.IsNull() )
    
       return true ;
    
    
    
       return false ;
    
      }
    
    
    
      /// <summary>
    
      /// 堆栈的个数
    
      /// </summary>
    
    
    
      public int StackListCount
    
      {  
    
    
    
        
    
       get
    
       {
    
        return m_List.ListCount ;
    
       }
    
     
    
      }
    
    
    
      /// <summary>
    
      /// 移动到堆栈的底部
    
      /// </summary>
    
    
    
      public void MoveBottom()
    
      {
    
    
    
            m_List.MoveFrist ();
    
      }
    
    
    
      /// <summary>
    
      /// 移动到堆栈的Top
    
      /// </summary>
    
      
    
      public void MoveTop()
    
      {
    
       m_List.MoveLast  ();
    
      }
    
    
    
      /// <summary>
    
      /// 向上移动
    
      /// </summary>
    
      
    
      public void MoveUp()
    
      {
    
       m_List.MoveNext();
    
      }
    
    
    
      /// <summary>
    
      /// 向上移动
    
      /// </summary>
    
      
    
      public void MoveDown()
    
      {
    
       m_List.MovePrevious() ;
    
      }
    
    
    
      /// <summary>
    
      /// 取得当前的值
    
      /// </summary>
    
      
    
       public int  GetCurrentValue()
    
      {
    
       return m_List.GetCurrentValue ();
    
      }
    
    
    
      /// <summary>
    
      /// 删除取得当前的结点
    
      /// </summary>
    
      
    
      public void Delete()
    
      {
    
       m_List.Delete ();
    
      }
    
    
    
      /// <summary>
    
      /// 清空堆栈
    
      /// </summary>
    
    
    
    
    
     public void Clear()
    
    
    
    {
    
    
    
         m_List.Clear();
    
    
    
    }
    
    
    
    
    
     }
    
    }
    使用先前的链表类,就可以轻松的完成堆 栈类,除了基本的,Pop,Push 方法外,还提供,MoveBottom,MoveTop,MoveUp,MoveDown ,来访问堆栈中的数据,使用GetCurrentValue方法,来取得数据的值,可以执行更多的操作,呵呵,就这么简单。To Be Continue.

    发表于 @ 2008年06月16日 10:58:21|评论(loading...)|收藏

    新一篇: 数据结构之队列 | 旧一篇: 谈谈C#中的接口

    评论:没有评论。

    发表评论  


    当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
    Csdn Blog version 3.1a
    Copyright © Vince