[Data Structure & Alogrithm] Stack

📝Stack

img

📌 핵심 요약

"스택은 나중에 들어간 데이터가 먼저 나오는 자료구조이다."

📌 설명

  • 나중에 들어간 데이터가 먼저 나오는 자료구조 (후입선출, LIFO : Last-In First-Out)

📌 시간 복잡도

  • push O(1) : Stack에 원소를 삽입한다. (쌓는다.)
  • pop O(1) : Stack의 가장 위쪽에 위치한 원소를 제거한다.

🌟 컴퓨터는 내부적으로 Stack을 사용해 함수들의 문맥(context)을 관리한다.

  • 함수를 호출할때는 그 시점의 문맥 데이터를 임시로 저장해둬야한다.

  • 함수가 종료되면 이전의 함수로 돌아가고, 임시로 저장해둔 문맥 데이터를 불러온다.

  • Stack은 이러한 과정을 직관적으로 가능하게 해준다.