코테 기초

Stack & Queue(+ Deque)

서버관리자 페페 2022. 12. 6. 12:30
  Deque Stack(LILO) Queue(FIFO)
작업 시행 위치 양방향에서 작업 가능 (Top) (rear) <---------> (front)
넣기 Add push (rear에서) add
조회 Get peek (front에서) peek
빼기 Remove pop (front에서) poll(삭제 및 확인)
이용   DFS / 백트래킹 BFS

*Priority Queue

들어간 순서와 상관 없이, 우선순위가 높은 데이터가 먼저 나오는 구조

우선순위 셋업에 따라 front에 항상 Min or Max가 위치

heap(트리 종류)을 이용해 주로 구현

/

 

queue.size() 로 확인

아래처럼 container를 거치지 않고 바로 활용 가능

Queue<Integer> queue = new LinkedList<>();
for (int i = 0; i <= N; i++) {
    queue.add(i);
}
while (queue.size() > 1) {
    queue.poll();
    queue.add(queue.poll());
}
System.out.println(queue.poll());