목록선입선출 (2)
판봉 개발 일기
큐(Queue) 선형 리스트의 한쪽에서는 삽입 작업이 이루어지고 다른 한쪽에서는 삭제 작업이 이루어지도록 구성한 자료 구조입니다. 가장 먼저 삽입된 자료가 가장 먼저 삭제되는 선입선출방식입니다. 시작과 끝을 표시하는 두개의 포인터가 있습니다. 프런트(F. Front) 포인터 - 가장 먼저 삽입된 자료의 기억공간을 가리키고 삭제 작업을 할때 사용함 리어(R ,Rear) 포인터 - 가장 마지막에 삽입된 자료의 위치 기억공간을 가리키고 삽입 작업을 할때 사용함 Queu의 응용 분야 - 창구 업무나 택시 정거창 처럼 서비스 순서를 기다리는 등의 대기행렬의 처리에 사용, 운영체제의 작업 스케줄링에 사용합니다 데크(Deque) 삽입과 삭제가 리스트의 양쪽 끝에서 모두 발생할 수 있는 자료구조 Double Ended..
FIFO 컬렉션은 다른 말로 "선입선출"이라고한다. "선입선출"이라 함은 먼저 넣은 객체가 먼저 빠져나가는 자료구조를 말한다. 또한 FIFO 자료구조를 제공하는 Queue 인터페이스를 제공하고 있다. LIFO 컬렉션의 Stack은 클래스이며 FIFO 컬렉션의 Queue는 인터페이스란 점을 명확히 상기시켜야겠다. 위 사진 처럼 Queue의 구조는 먼저 기다린 사람이 먼저 가게안으로 들어가는 것처럼 연상해서 이해하면 쉬울 것 같다. 이것또한 Stack과 다르게 가로라고 이해하면 좋을것이라고 생각이 된다. 다음은 Queue 인터페이스의 메소드를 정의한 것이다. 리턴 타입 메소드 설명 boolean offer(E e) 주어진 객체를 넣음 E peek() 객체 하나를 가져옴 객체를 큐에서 제거하지 않음 (stac..