본문 바로가기
개발/자료구조

[자료구조] 큐(Queue)란?

by 난중후니 2022. 12. 29.
728x90
반응형

큐(Queue)란?

  • 선입선출 FIFO(First In First Out) 자료구조입니다.

  • 먼저 저장된 값이 가장 먼저 반환되는 구조입니다.

ex) 번호표 뽑아서 순서 기다리기, 화장실 줄서기 등..

Java에서 큐(Queue)의 메소드

  • add(E item): item을 저장 후 저장되었으면 true, 그렇지 않으면 exception 처리됩니다.
  • offer(E item): item을 저장 후 저장되었으면 true, 그렇지 않으면 false 반환합니다.
  • peek():가장 먼저 저장된 item을 반환합니다.
  • pool(): 가장 먼저 저장된 item을 반환 후 삭제합니다.
  • remove(): 가장 먼저 저장된 item을 반환, item이 없는 경우 exception 처리됩니다.
  • isEmpty(): Queue의 item이 존재하는지 확인, 존재하지 않으면 true, 존재하면 false 반환합니다.
    ex)
        Queue<String> queue = new LinkedList<>();

        // Queue에 chicken이라는 item을 저장 후 저장되었으면 true, 그렇지 않으면 exception 처리
        System.out.println("queue add >>> "+queue.add("chicken"));

        // Queue에 pizza이라는 item을 저장 후 저장되었으면 true, 그렇지 않으면 false 반환
        System.out.println("queue offer >>> "+queue.offer("pizza"));

        // Queue의 가장 먼저 저장된 item을 반환
        System.out.println("queue peek >>> "+queue.peek());

        // Queue의 가장 먼저 저장된 item을 반환 후 삭제
        System.out.println("queue poll >>> "+queue.poll());

        // Queue의 가장 먼저 저장된 item을 반환
        System.out.println("queue peek >>> "+queue.peek());

        // Queue의 가장 먼저 저장된 item을 반환, item이 없는 경우 exception 처리
        System.out.println("queue remove >>> "+ queue.remove());

        // Queue의 item이 존재하는지 확인, 존재하지 않으면 true, 존재하면 false
        System.out.println("queue isEmpty >>> " + queue.isEmpty());

결과

queue add >>> true
queue offer >>> true
queue peek >>> chicken
queue poll >>> chicken
queue peek >>> pizza
queue remove >>> pizza
queue isEmpty >>> true
728x90
반응형

댓글