프로그래밍 언어/Kotlin
Kotlin의 ArrayDequeue : Stack & Queue를 손쉽게 사용하기
Julie825
2023. 1. 6. 16:14
public class ArrayDeque<E> : AbstractMutableList<E>
Deque는 Double Ended Queue의 줄임말이다. 덱이라고 부르면 된다.
어느 방향으로든 삽입과 삭제가 구현되어있어서 Stack으로도, Queue로도 사용 가능하다.
MutableList로 구현되어있어서 index를 통한 get/set operation도 가능하다.
Stack으로 사용하는 법
/* Stack */
val stack = ArrayDeque<Int>()
stack.add(e) // push, list 끝에 넣는다.
stack.removeLast() // pop
stack.last() // peek(조회)
: Java에 Vector로 구현된 Stack이 있어서 Stack은 꼭 Deque을 사용하지 않아도 된다.
Queue로 사용하는 법
/* Queue */
val queue = ArrayDeque<Int>()
queue.add() // offer, list 끝에 넣는다.
queue.removeFirst() // poll
queue.first() // 조회