TIL_200903(Stack/Queue)

Si Choi·2020년 9월 3일

1. Stack에 대한 정리

  • First In Last Out(FILO): 처음 들어온 값이 가장 마지막에 나가는 방식의 데이터 구조
  • Stack의 Time Complexity
    - 값을 가져올 때 : O(n)
    - 값을 추가할 때 : O(1)
    - 값을 삭제할 때 : O(1)
  • 쌓여있는 접시 더미와 같이 작동한다고 생각하면 됨.
  • 새로운 접시가 쌓일 때도 맨 위에서 쌓이고, 접시를 가져갈 때도 맨 위에서 가지고 가는 것과 같은 원리임
  • Call Stack 도 Stack의 예시라고 할 수 있음
  • MDN Call Stack 설명
  • GeeksforGeeks Stack 설명

2. Queue에 대한 정리

  • First In First Out(FIFO) : 처음 삽입(enqueue)된 항목이 가장 먼저 제거(dequeue) 됨
  • Queue의 Time Complexity
    - 값을 가져올 때 : O(n)
    - 값을 추가할 때 : O(1)
    - 값을 삭제할 때 : O(1)
  • 놀이공원에서 서는 줄과 같은 작동 원리임
  • 사람들이 맨 끝에 줄을 서고, 맨 앞에서부터 놀이기구에 탑승하는 것과 같다고 보면됨
  • GeeksforGeeks Queue 설명
profile
함께 성장하는 개발자가 되겠습니다!

0개의 댓글