Search

Queue

특징

FIFO 구조 : 가장 먼저 들어온 요소가 가장 먼저 처리된다.
한쪽에서는 삽입만 일어나고 다른 한쪽에서는 삭제 연산만 이루어지는 순서 리스트다.
Front는 삭제 연산만 수행하고 Rear는 삽입 연산만 수행한다.
보통 BFS 넓이 우선 탐색에서 사용한다.

Method

Queue<자료형> q = new LinkedList<>(); // 삽입 // 둘 다 동일하게 성공 시 true 반환 q.add(value); // 실패 시 Exception 발생 q.offer(value); // 실패 시 false 반환 // 삭제 q.remove(value의 자료형); // 성공 시 삭제된 value 반환, 공백 큐일 시 NoSuchElementEx 발생 q.remove(value); // 성공 true, 실패 false q.poll(value); //성공 시 삭제된 value 반환 // 큐의 front 값 반환 q.element(); // 공백 큐일 경우 NoSuchElementException 발생 q.peek(); // 공백 큐이면 null 반환 // 큐 초기화 q.clear(); // void 반환 없음 // 큐에 원소 존재 유무 q.contains(value); // true, false 반환 // 사이즈 q.size(); // 반환 값 int // 공백 큐 확인 q.isEmpty(); // true, false 반환
Java
복사
Queue<Integer> queue = new PriorityQueue<>(); // 우선순위 큐 (오름차순 정렬) Queue<Integer> queue = new PriorityQueue<>(Collections.reverseOrder()); // (내림차순 정렬)
Java
복사