기본 문법/[JAVA]

[JAVA] List - Stack VS Queue

바켱서 2020. 6. 14. 01:12

구현을 위해 어떠한 컬렉션 클래스를 사용하는 것이 좋을까?

    - 순차적으로 데이터를 추가&삭제하는 스택에는 ArrayList와 같은 배열 기반의 컬렉션 클래스를 사용

    - 큐는 데터를 삭제할 때 첫 번째 저장된 데이터를 삭제 --> 빈 공간을 채우기 위해 데이터의 복사가        발생함으로써 ArrayList는 비효율적. --> LinkedList로 구현하는 것이 더 적합하다.

 

PriorityQueue

  Queue인터페이스의 구현체 중의 하나, 저장한 순서에 관계없이 우선순위가 높은 것부터 꺼내게 된다는 특징

 

Dequeue

  Queue의 변형으로, 한 쪽 끝으로만 추가/삭제하는 Queue와 달리, Deque는 양쪽 끝에 추가/삭제 가능

  Deque의 구현체로는 ArrayDeque와 LinkedList 등이 있다.