아무거나

java로 queue 구현 본문

Java & Kotlin/Java

java로 queue 구현

전봉근 2019. 6. 27. 10:15
반응형

[java로 queue 구현]

큐는 FIFO - First in First out(선입선출) 구조이다.

 

큐는 기본적으로 Enqueue, Dequeue, isEmpty를 갖고 있다.

- Enqueue : 데이터의 삽입

- Dequeue : 데이터를 삭제

 

[예제소스]

package test;



import java.util.ArrayList;

import java.util.List;



public class MyQueue {

    private List<Integer> queue = new ArrayList<Integer>();



    public void enqueue(Integer n) { queue.add(n); }  // add function을 사용해 데이터를 순차적으로 넣는다.



    public Integer dequeue() {

        // queue에 만약 아이템이 있을 경우에는 가장첫번째 아이템을 제거한다. 그 제거된 아이템을 리턴한다.

        if(queue.isEmpty()) {

            System.out.println("queue is empty");

            throw new java.util.NoSuchElementException();

        }

        return queue.remove(0);

    }



    public boolean isEmpty() {

        // queue가 비어있는지 아닌지 확인

        return queue.isEmpty();

    }



    public static void main(String[] args) {

        MyQueue mq = new MyQueue();



        mq.enqueue(1);

        mq.enqueue(2);

        mq.enqueue(3);

        mq.enqueue(4);



        while(!mq.isEmpty()) {

            System.out.println(mq.dequeue());

        }

    }

}

 

반응형
Comments