스택

◎ Last In First Out (LILO)
⇨ 후입선출의 구조
◎ 스택은 한쪽 방향에서만 데이터의 삽입과 삭제가 가능
⇨ 출입구가 1개뿐인 자료구조
◎ top(peek): 가장 최근에 저장된 데이터이자 먼저 삭제 될 데이터
◎ push: 데이터를 삽입하는것
◎ pop: 데이터를 삭제할 때 사용
사용 예
◎ 이전 채널로 돌아가기
◎ 뒤로가기
◎ ctrl + z
◎ history
◎ 재귀 함수
◎ 역순 문자배열
큐

◎ First In First Out(FIFO)
⇨ 선입선출의 구조
◎ 한 쪽에서는 데이터 삽입, 다른 한 쪽에서는 데이터의 삭제만 가능
⇨ 입구와 출구가 별개로 존재하는 자료구조
◎ Enqueue: 데이터 삽입
◎ Dequeue (JS의 shift): 데이터 삭제
◎ Front: Dequeue시 삭제되는 데이터 (가장 먼저 저장된 데이터)
◎ Rear: 추가될 새로운 요소의 위치
사용 예
◎ BFS 알고리즘
◎ 프로세스 관리 (JS의 콜백 큐)
◎ 프린터의 대기열