스택을 설정하고 여기에 요소를 추가합니다.
Stack st = new Stack(); st.Push('P'); st.Push('Q'); st.Push('R');
이제 반전을 위해 다른 스택을 설정합니다.
Stack rev = new Stack();
스택의 개수가 0이 되지 않을 때까지 푸시 및 팝 방식을 사용하여 반대로 합니다.
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