>  기사  >  백엔드 개발  >  C#에서 스택 구현

C#에서 스택 구현

WBOY
WBOY앞으로
2023-09-07 16:17:10752검색

在 C# 中实现堆栈

Stack 클래스는 Push 및 Pop 작업을 사용하여 C#으로 구현됩니다.

Stack은 C#에서 객체의 후입선출 컬렉션을 나타내는 데 사용됩니다. 다음은 Stack 클래스의 메서드입니다. -

Sr.No. Methods and Description
1 public virtual void Clear();

스택에서 모든 요소를 ​​제거합니다.

2 public virtual bool Contains(object obj);

요소가 스택에 있는지 확인합니다.

3 공용 가상 객체 Peek();

객체를 삭제하지 않고 스택 맨 위에 반환합니다.

4 공용 가상 객체 Pop();

스택의 맨 위에 있는 객체를 제거하고 반환합니다.

5 public virtual void Push(object obj);

스택의 맨 위에 객체를 삽입합니다.

td>

6 Public virtual object[] ToArray(); strong>

스택을 새 배열에 복사합니다.

푸시 작업으로 요소가 추가됩니다.

푸시 작업으로 요소가 추가됩니다. 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

위 내용은 C#에서 스택 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제