Queue(큐)
- 선입선출(FIFO) : 먼저 들어온 데이터가 먼저 나간다.
- LILO(Last-in, Last- Out)
- 스택과는 반대개념
- import java.util.*;
- Queue<T> queue = new LinkedList<>();
ex) Queue<String> q = new LinkedList<>();
<Queue>
1. add() : 큐에 데이터 삽입
2. peek() : 가장 먼저 큐에 들어간 데이터 반환
3. remove() : 가장 먼저 큐에 들어간 데이터 삭제 및 반환
4. isEmpty() : 큐가 비어있는지 반환
5. size() : 큐에 있는 요소의 크기 반환
Deque(덱)
- Double-ended queue의 줄임말
- 연결리스트로 이루어지며, 앞&뒤 모두 데이터의 삭제와 삽입이 일어남
- import java.util.LinkedList;
- import java.util.Queue;
- Deque<T> deque = new LinkedList<>();
ex) Deque<String> q = new LinkedList<>();
<Deque>
1. addFirst() : 앞에 요소 삽입
2. addLast() : 뒤에 요소 삽입
3. peekFirst() : 앞 요소 반환
4. peekLast() : 뒤 요소 반환
5. pollFirst() : 앞 요소 없애면서 반환
6. pollLast() : 뒤 요소 없애면서 반환
// 참고로, First, Last를 쓰지 않으면 default 값이 first다!
// 그래서 deque.add(3); 라고 적으면, deque.addFirst(3); 와 같다!
'LANGUAGE > JAVA' 카테고리의 다른 글
[JAVA] 1주차 - JVM은 무엇이며 자바 코드는 어떻게 실행하는 것인가 (0) | 2021.10.10 |
---|---|
[JAVA] 정규표현식 (1) | 2021.09.11 |
IntelliJ Console 한글 깨짐 - feat.error_Log (0) | 2020.05.12 |
Error 로그(자바 컴파일 error: unmappable character (0x90) for encoding x-windows-949) (0) | 2020.05.11 |
[JAVA] 기본 입출력(Scanner vs BufferedReader 차이) (0) | 2020.01.31 |