티스토리 뷰

spring boot

[JAVA] 큐 , 데큐

햄밥김치참치버거 2026. 4. 12. 01:49

큐(Queue) 선입선출 구조 (FIFO)

특징 :

● FIFO : 구조로 먼저 들어온 데이터가 먼저 나감.

● 한쪽 끝에서만 삽입하고 ,반대쪽은 삭제만 가능.

사용예시
설명
프로세스 관리/대기열
은행에서 손님이 대기열에 줄을 서 업무를 처리하는 것이 큐의 예시.
(먼저 온 순서대로 업무 처리를 하기 때문)
프로세스 관리
운영체제에서 프로세스를 관리할 때, 프로세스가 CPU를 할당받기 위해 대기하는 큐 사용
너비 우선 탐색 (BFS)
그래프 탐색 알고리즘, 인접한 노드를 우선으로 방문해야 하는 경우 큐 사용
캐시
캐시 메모리에서 데이터를 저장하고 꺼낼 때, 가장 오래된 데이터를 먼저 삭제하는 정책을 구현할 때 큐 사용
메시지 큐
시스템 간 비동기식 통신을 지원.
스케줄링 시스템
작업 우선순위가 없는 경우 요청 순서대로 처리

 


데큐 ( Deque) : 양방향 큐

특징:

● 양쪽 끝에서 데이터 삽입과 삭제가 모두 가능한 자료구조.

● 선입선출(FIFO) , 후입선출(LIFO) 을 동시에 지원 가능.

사용 예시
설명
양방향 큐
큐의 앞과 뒤에서 모두 삽입과 삭제가 가능한 덱은 양방향 큐라고 함.
회문 판별
앞에서 나 뒤에서 읽으나 동일한 문자열을 검사할 때 사용
최댓값/최솟값 검색
슬라이딩 윈도우 알고리즘을 이용해 최댓/최솟값을 검색할 때 사용
캐시 시스템 ( LRU (Least Recently Used)
최근에 사용되지 않은 데이터를 제거, 새로운 데이터를 추가할 때 데큐 사용

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/06   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함