後進先出 (LIFO) 資料結構。僅支援取得堆頂、壓入、彈出、取得大小、判斷是否為空。
namespace Xianfen.Net.DataStructure {
public class Stack<T> {
protected SingleLinkedList<T> m_List;
public int Count { get { return m_List.Count; } }
public bool IsEmpty { get { return m_List.IsEmpty; } }
public Stack() { m_List = new SingleLinkedList<T>(); }
public Stack(T t) { m_List = new SingleLinkedList<T>(t); }
public T Pop() { T t = m_List.GetTail(); m_List.RemoveTail(); return t; }
public T Top() { return m_List.GetTail(); }
public void Push(T t) { m_List.AddTail(t); }
}
}
封裝單向鏈結串列,Push 對應 AddTail,Pop/Top 對應 GetTail/RemoveTail。