在 C# 中实现堆栈

来源:这里教程网 时间:2026-02-21 16:24:45 作者:

在 c# 中实现堆栈

Stack 类在 C# 中使用 Push 和 Pop 操作实现。

Stack 在 C# 中用于表示对象的后进先出集合。以下是 Stack 类的方法 -

Sr.No. 方法及说明
1 public virtual void Clear();

从堆栈中删除所有元素。

2 public virtual bool Contains(object obj);

判断是否元素在堆栈中。

3 public virtual object Peek();

返回Stack顶部的对象而不删除它。

4 公共虚拟对象Pop();

删除并返回堆栈顶部的对象。

5 public virtual void Push(object obj);

在堆栈顶部插入一个对象。

td>

6 公共虚拟对象[] ToArray(); strong>

将 Stack 复制到新数组。

Push 操作添加元素。

Push 操作添加元素。 p>

Stack st = new Stack();
st.Push('A');
st.Push('B');
st.Push('C');
st.Push('D');

出栈操作从堆栈中删除元素。

st.Push('P');
st.Push('Q');

以下示例展示了如何使用 Stack 类及其 Push() 和 Pop() 方法。

示例

 实时演示

using System;
using System.Collections;
namespace CollectionsApplication {
   class Program {
      static void Main(string[] args) {
         Stack st = new Stack();
         st.Push('A');
         st.Push('B');
         st.Push('C');
         st.Push('D');
         Console.WriteLine("Current stack: ");
         foreach (char c in st) {
            Console.Write(c + " ");
         }
         Console.WriteLine();
         st.Push('P');
         st.Push('Q');
         Console.WriteLine("The next poppable value in stack: {0}", st.Peek());
         Console.WriteLine("Current stack: ");
         foreach (char c in st) {
            Console.Write(c + " ");
         }
         Console.WriteLine();
         Console.WriteLine("Removing values....");
         st.Pop();
         st.Pop();
         st.Pop();
         Console.WriteLine("Current stack: ");
         foreach (char c in st) {
            Console.Write(c + " ");
         }
      }
   }
}

输出

Current stack:
D C B A
The next poppable value in stack: Q
Current stack:
Q P D C B A
Removing values....
Current stack:
C B A

相关推荐