使用C#反转堆栈

设置堆栈并向其中添加元素。

Stack st = new Stack();

st.Push('P');

st.Push('Q');

st.Push('R');

现在设置另一个堆栈来反转它。

Stack rev = new Stack();

在堆栈计数不等于0之前,请使用Push and Pop方法将其反转。

while (st.Count != 0) {

   rev.Push(st.Pop());

}

以下是完整的代码-

示例

using System;

using System.Collections;

namespace CollectionsApplication {

   public class Program {

      public static void Main(string[] args) {

         Stack st = new Stack();

         Stack rev = new Stack();

         st.Push('P');

         st.Push('Q');

         st.Push('R');

         Console.WriteLine("Current stack: ");

         foreach(char c in st) {

            Console.Write(c + " ");

         }

         Console.WriteLine();

         while (st.Count != 0) {

            rev.Push(st.Pop());

         }

         Console.WriteLine("Reversed stack: ");

         foreach(char c in rev) {

            Console.Write(c + " ");

         }

      }

   }

}

输出结果

Current stack:

R Q P

Reversed stack:

P Q R

以上是 使用C#反转堆栈 的全部内容, 来源链接: utcz.com/z/321753.html

回到顶部