[Java] Deque
Deque는 Double-Ended Queue의 줄임말이다
양쪽에서 데이터를 추가, 삭제, 조회를 할 수 있는 자료구조이다
- Stack과 Queue를 합친 상태다
Deque의 메서드들
import java.util.*;
Deque<Integer> deque = new LinkedList<Integer>();
// ========== 삽입 =============
// 덱 앞에 값을 넣는다
// 덱에 용량 제한이 있고, 초과하면 예외를 발생한다
deque.addFirst(value);
deque.push(value);
// 덱 앞에 값을 넣는다
// 덱에 용량 제한이 있고, 초과하면 false를 반환한다
deque.offerFirst(value);
// Deque, 제일 뒤에 값을 넣는다
// 덱에 용량 제한이 있고, 초과하면 예외를 발생한다
deque.add(value);
deque.addLast(value);
// 덱 제일 뒤에 값을 넣는다
// 덱에 용량 제한이 있고, 초과하면 false를 반환한다
deque.offer(value);
deque.offerLast(value);
// ========== 삭제 =============
// 덱 제일 앞의 값을 빼낸다
// 덱이 비어 있으면 예외가 발생한다
deque.removeFirst();
deque.remove();
// 덱 제일 앞의 값을 빼낸다
// 덱이 비어 있으면 null을 반환한다
deque.poll();
deque.pollFirst();
// 덱 제일 위의 값을 빼낸다
// 덱이 비어 있으면 예외가 발생한다
deque.pop();
deque.removeLast();
// 덱 제일 뒤의 값을 빼낸다
// 덱이 비어 있으면 null을 반환한다
deque.pollLast();
// ========== 조회 =============
// 덱에 제일 앞의 값을 반환한다
// 덱이 비어있으면 예외가 발생한다
deque.getFirst();
// 덱에 제일 앞의 값을 반환한다
// 덱이 비어있으면 null을 반환한다
deque.peek();
deque.peekFirst();
// 덱에 제일 뒤의 값을 반환한다
// 덱이 비어있으면 예외가 발생한다
deque.peekLast();
// 덱에 제일 뒤의 값을 반환한다
// 덱이 비어있으면 null을 반환한다
deque.getLast();
// value가 덱에 있는지 확인해준다
deque.contains(value);
'알고리즘 > Java 알고리즘 설명' 카테고리의 다른 글
[Java] 연결리스트 (0) | 2023.06.16 |
---|---|
[Java] 해시 테이블 (0) | 2023.06.15 |
[Java] Array (0) | 2023.06.14 |
[Java] Queue (0) | 2023.06.13 |
[Java] Stack (0) | 2023.06.13 |