akongman
2024. 3. 9. 20:15
어.. 여전히 그림은 좀 엉성하고 이상한데.
아무튼!! 글을 읽으면 이해할 수 있을 것이다.
queue는 양방향이다. 스택과는 다르다는 점이 양방향으로 삽입 삭제가 양방향이라는 점이다.
그래서 1이라는 값을 제일 먼저 push 해도 제일 먼저 나갈 수 있다.
즉
두꺼운 옷 -> 긴팔 - > 반팔 - > 나시 순으로 입력을 했을때 스택이였다면 나시부터 하나씩 빼야했다.
하지만 큐의 경우에는 두꺼운 옷을 먼저 넣었어도 두꺼운 옷 먼저 뺼 수 있다.
First in First Out (FIFO) 방식이다. 따라서 먼저들어온게 먼저 나간다.
---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ----------
이 역시 표준 라이브러리에 정의되어 있다.
#include <queue> 로 사용해주면 된다.
queue에서 정의되어 있는 함수들은 다음과 같다.
1) push ( )
2) pop ( )
3) empty ( )
4) size ( )
여기까지는 스택과 동일하다 추가로 생긴 것은
5) front() : 제일 첫번째에 있는 것
6) back() : 제일 마지막에 있는 것