☁️정리/❄️자료구조

[자료구조] Stack

뿌야._. 2021. 9. 28. 22:25

 Stack 이란?


  • 후입 선출(LIFO) 프로토콜을 구현하는 자료 구조
  • 접근 가능한 유일한 객체는 최근에 삽입된 객체

== 한쪽 끝에서한 항목을 삭제하거나 새로운 항목을 저장하는 자료구조

 

 

 Stack 연산


1) Peek: 스택이 공백이 아니면, Top의 원소를 return

2) Pop: 스택이 공백이 아니면, Top의 원소를 삭제해서 return

3) Push: 주어진 원소를 스택의 Top에 추가

4) Size: 스택에 있는 원소의 수 return

 

 

 Stack 구현


  • array를 기반 구현
    -> 스택의 원소를 저장하기 위해 배열 사용
    -> Size, Peek, Pop, Push 외에 isEmpty, resize 메소드 포함 
    => ArrayStack은 스택이 꽉 찼을 때 배열을 재구축해야 하므로 다소 비효율적

  • linkedlist 기반 구현

 

 

 

 Stack 응용


- 후위식

- 수식 괄호 검사

- 미로 연구

 

'☁️정리 > ❄️자료구조' 카테고리의 다른 글

[자료구조] TreeMap  (0) 2023.06.19
[자료구조] 트리 순회  (0) 2022.03.07
[자료구조] 해시 테이블  (0) 2021.10.22
[자료구조] Queue  (0) 2021.09.28
[자료구조] Array  (0) 2021.09.28