자료구조 큐 예제

큐는 별도의 데이터 유형으로 구현되거나 이중 종료 큐(deque)의 특별한 경우로 간주될 수 있으며 별도로 구현되지 않을 수 있습니다. 예를 들어 Perl과 Ruby는 양쪽 끝에서 배열을 푸시하고 터지는 것을 허용하므로 푸시 및 이동 해제 함수를 사용하여 목록을 큐에 넣거나 대기열에 줄 수 있습니다(또는 반대로 시프트 및 팝을 사용할 수 있음). 비동기 함수가 실행되면 이벤트 루프에 들어갑니다. 이 함수와 연결된 메시지는 수신된 순서대로 메시지 큐에 들어갑니다. 루프에 이미 있는 다른 함수가 실행되거나 처리 중입니다. 메시지가 큐에 들어가지 면 콜백 함수가 실행되고 실행 스택에 배치됩니다. 큐는 데이터, 개체, 사람 또는 이벤트와 같은 다양한 엔터티가 저장되고 나중에 처리될 수 있도록 컴퓨터 과학, 전송 및 운영 연구에서 서비스를 제공합니다. 이러한 컨텍스트에서 큐는 버퍼의 기능을 수행합니다. 큐는 배열, 스택 또는 링크된 목록을 사용하여 구현할 수 있습니다.

큐를 구현하는 가장 쉬운 방법은 Array를 사용하는 것입니다. 큐는 컬렉션의 엔터티가 순서대로 유지되고 컬렉션의 주(또는 만) 작업이 큐라고 하는 후면 터미널 위치에 엔터티를 추가하고 제거되는 특정 종류의 추상 데이터 형식 또는 컬렉션입니다. 큐 제거라고 하는 프론트 터미널 위치의 엔터티입니다. 큐는 배열을 사용하여 표현될 수 있는 선형 데이터 구조이다. 다음은 배열을 사용하여 큐의 구현을 보여주는 프로그램입니다. 예: 큐가 비어 있으면 이 함수는 `true`를 반환하고, 그렇지 않으면 `false`를 반환합니다. 순환 대기열은 표준 큐 구조에 비해 개선되었습니다. 표준 큐에서 요소가 삭제되면 빈 공간이 다시 사용되지 않습니다. 그러나 순환 대기열에서는 빈 공간이 다시 사용됩니다.

그러나 앞색 인덱스 앞에 여유 공간이 있습니다. 새 항목을 대기열에 대 한 해당 공간을 사용 합니다., 즉 다음 항목은 인덱스 0에 저장 됩니다., 다음 1, 앞까지. 이러한 모델을 큐 또는 순환 큐 를 둘러싸기라고 합니다. 임의 액세스의 전형적인 그림은 책입니다 – 책의 각 페이지는 다른 사람과 독립적으로 열 수 있습니다. 임의 액세스는 이진 검색과 같은 많은 알고리즘에 매우 중요합니다. 큐를 구현하는 데 사용되는 데이터 구조는 세 개의 연결된 목록(f, r, s) {displaystyle(f, r, s)}로 구성되며 f는 큐의 맨 앞에 있으며 r은 역순으로 큐의 후면입니다.