[C#] Stack LIFO 후입선출 방식

반응형

Stack

 

  • LIFO, 후입 선출 방식
  • 스택에 아이템을 넣는 push
  • 스택에 아이템을 꺼내는 것을 pop

 

push : stack 객체를 추가

 

- pop : Queue 객체를 제거

 

- Count : 객체의 갯수

 

- Clear : 모든 객체 제거

 

스택에서 아이템을 꺼내면 가장 최근에 집어넣은 아이템이 pop 됩니다.

 

 

Ex)탄창

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace Stack
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            Stack<string> myStack = new Stack<string>();
            myStack.Push("첫번 째 줄");
            myStack.Push("두번 째 줄");
            myStack.Push("세번 째 줄");
            myStack.Push("마지막 줄");
 
            string takeALook = myStack.Peek();
            string getFirst = myStack.Pop(); //가장 최근의 아이템 pop
            string getNext = myStack.Pop();
            int howMany = myStack.Count();
            myStack.Clear();
            MessageBox.Show("Peek() returned : " + takeALook + "\n"
                + "The first Pop() returned " + getFirst + "\n"
                + "The second Pop() returned " + getNext + "\n"
                + "Count before Clear () was " + howMany + "\n"
                + "Count after Clear() is now " + myStack.Count);
        }
    }
}
 
cs

 

728x90
반응형