프로그래밍/자바 클래스
자바 Deque (Double-Ended Queue)
Mt.Hwang
2025. 5. 24. 14:48
* 자바 Deque (Double-Ended Queue)
양방향으로 삽입, 삭제가 가능한 큐
..~~~~..
* 덱 생성
선언은
Deque<T> name
생성자는
new LinkedList<>()
..~~~~..
* 메서드
기본적으로 큐와 동일
접미사로 First, Last가 붙은 것
offerFirst(T t) -> boolean : 덱에 공간이 없으면 flase
offerLast(T t) -> boolean : 뒤에 삽입. 실패 시 false
pollFirst() -> T : 앞에서 꺼냄 + 제거. 없으면 null
pollLast() -> T : 뒤에서 꺼냄 + 제거. 없으면 null
peekFirst() -> T : 앞 요소 조회. 없으면 null
peekLast() -> T : 뒤 요소 조회. 없으면 null
addFirst(T t) -> void : 앞에 삽입. 실패 시 예외 발생
addLast(T t) -> void : 뒤에 삽입. 실패 시 예외 발생
removeFirst() -> T : 앞 제거. 없으면 예외 발생
removeLast() -> T : 뒤 제거. 없으면 예외 발생
getFirst() -> T : 앞 조회. 없으면 예외 발생
getLast() -> T : 뒤 조회. 없으면 예외 발생
isEmpty() -> boolean : 비었는지 여부
size() -> int : 덱의 크기
clear() -> void : 덱 초기화
..~~~~..
* 기타
삽입, 삭제의 시간복잡도는 모두 O(1)이다
..~~~~..