Stack


데이터를 순서대로 쌓는 자료구조

stack의 특징은 입력과 출력이 하나의 방향으로 이루어지는 제한적 접근

Ex) 막다른 길을 맞이한 차들, 마지막으로 들어온 차가 후진해서 나가야 그 뒤에 들어선 차들이 나갈 수 있는 구조

LIFO(Last In First Out)  : 마지막으로 들어와서 첫번째로 나감

FILO(First In Last Out)  : 첫번째로 들어와서 마지막으로 나감

Ex) 브라우저의 뒤로 가기 앞으로 가기 기능을 구현할 때

  1. 새로운 페이지로 접속할 때, 현재 페이지를 prev stack에 보관
  2. 뒤로 가기 버튼을 눌러 이전 페이지로 돌아갈 때 , 현재 페이지를 next stack에 보관, prev stack에 가장 나중에 보관된 페이지를 현재 페이지로 가져옴
  3. 앞으로 가기 버튼을 누르면 next stack의 가장 마지막으로 보관된 페이지를 가져옴
  4. 마지막으로 현재페이지를 prev stack에 보관