[스택 (Stack)]
- 한쪽 끝에서만 데이터를 삽입(push)하거나 삭제(pop)할 수 있는 구조
- 후입 선출 (LIFO : Last In First Out) 구조
[스택의 구조]
[삽입(push) 삭제(pop)]
- Top 포인터 : 가장 나중에 삽입되는 데이터 가리킴 (= 삭제할 지점을 가리킴)
삽입 : * 삽입하고 top 포인터를 1 증가 시켜야 함.
삭제 : * 삽입하고 top 포인터를 1 감소 시켜야 함.
[스택에서 발생하는 오류]
- 오버플로 (overflow)
- 언더플로 (underflow)
[재귀함수와 콜스택]
위에서 Hello는 총 7번 호출된다. 스택에 쌓이고 지워지고를 반복하기 때문이다. 한 번씩 그림판에 작동 원리를 그려보기 바란다.
'C++ 자료구조' 카테고리의 다른 글
[C++ | 연결 리스트] 스택, 큐, 리스트 (0) | 2024.04.29 |
---|---|
[c++] 큐 (Queue) (0) | 2024.04.22 |
시간복잡도 기초 (0) | 2024.04.15 |
[c++] 연산자 중복 (오버로딩) (0) | 2024.04.02 |
[c++] 클래스 (Class) (0) | 2024.04.01 |