728x90
"Queue"는 사전적인 의미로는 무엇을 기다리는 줄, 또는 대기 행렬이라고 합니다.
즉 대기열, 기다리는 줄이죠. 마치 일상생활에서의 버스를 기다리는 줄 같은 것입니다.
버스 줄은 새치기를 하지 않는 이상 먼저 기다렸던 사람부터 버스에 타기 시작합니다.
프로그래밍에서도 같은 개념입니다.
그럼 그림으로 나타내보겠습니다.
"Queue"는 이렇게 입력 시 대기열의 마지막에 저장되고 큐에서 대기 중인 것을 순서대로 하나씩 출력시킵니다.
"FIFO(First In First Out)" 자료구조입니다. 말 그대로 먼저 들어온 것이 먼저 나가는 말입니다.
Queue는 언제 사용할까요? 바로 어떤 작업을 순서대로 실행시키기 위해 사용됩니다.
예를 들면 턴 제 게임에서 차례대로 1번 스킬 2번 스킬 3번 스킬을 한번에 입력시켰을 때 큐에 저장하고 입력된 순서대로 1번스킬 시전하고 끝이 나면 그다음 2번 스킬 시전...그리고 끝까지 실행합니다.
또 다른 예로는 게임 서버에 로그인 할 때 한번에 많은 접속자가 생길 경우 로그인 대기열이 생깁니다.
이때 생기는 대기열이 바로 Queue입니다.
728x90
반응형
'개발 > 자료구조' 카테고리의 다른 글
삽입정렬(Insertion Sort)이란 무엇일까? (0) | 2020.12.31 |
---|---|
버블정렬(Bubble Sort, Sinking Sort)이란 무엇일까? (0) | 2020.12.30 |
선택정렬(Selection Sort)란 무엇일까? (0) | 2020.12.29 |
Stack(스택)이란 무엇일까? (0) | 2020.09.20 |
댓글