ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 2024.03.12 - 스택(Stack)
    C# 2024. 3. 12. 17:15
    • 자료구조(Data Structure)

    자료구조란 데이터를 표현하고 저장하는 방법을 말한다.

     

    • 자료구조의 스택(Stack)

    스택은 나중에 추가된 데이터가 먼저 출력되는 후입선출(Last-In First-Out : LIFO) 자료구조이다.

    스택을 상자나 프링글스 통이라고 생각하면 좋다.

     

    스택에 데이터를 넣는 과정
    스택에서 데이터를 출력하는 과정

     

     

    스택에 데이터를 넣는 과정을 push, 스택에서 데이터를 출력하는 과정을 pop이라고 한다.

    스택의 맨 뒤에 저장된 데이터를 top이라고 한다.

    push, pop, top

     

    • C#에서의 스택

    C#에서는 일반화된 Stack<T> 클래스를 통해 스택 자료구조를 지원한다.

     

    - 스택을 선언하는 방법

    Stack<자료형> 스택_이름 = new Stack<자료형>();

     

    int형 데이터를 담는 스택 자료구조 myStack

     

     

     

    - 스택에 데이터를 넣고(Push) / 빼보자(Pop)

    스택_이름.Push(넣을_데이터);    //스택에 데이터를 담는다.
    스택_이름.Pop();                          //스택의 top에 위치한 데이터를 반환하고 스택에서 제거한다.

     

     

    데이터가 10, 20, 30 순서로 쌓여서 가장 나중에 들어온 30부터 데이터가 빠져나간다.

     

     

    ※주의 사항

     

    스택에 데이터가 없을 때 Pop하려고하면 예외가 발생한다. 

     

     

     

    - 스택에 담은 데이터 개수를 세기(Count)

    스택_이름.Count     //스택에 담은 데이터 개수를 반환한다.

     

     

     

     

    - 스택의 top에 위치한 데이터 보기(Peek)

    스택_이름.Peek()        //스택의 top에 위치한 데이터를 반환한다. Pop과 달리 데이터를 제거하지 않는다.

     

     

Designed by Tistory.