c 언어 큐 예제

    일반적으로 큐에서 수행하는 두 가지 기본 작업이 있습니다. 요소를 큐에 놓으면 헤드 포인터가 꼬리 포인터즉, 큐가 비어 있을 때까지 헤드 포인터 1 위치를 늘립니다. 큐에는 큐 와 큐 제거라는 두 가지 주요 작업이 있습니다. 위의 문은 QUEUE를 생성하며, 여기서 CAPACITY는 큐의 최대 용량을 일정하게 정의합니다. 큐 정의와 함께 큐에서 작업을 수행하기 위해 몇 가지 다른 변수가 필요합니다. 배열은 각 요소에 직접 적으로 일정한 시간에 액세스할 수 있는 임의 액세스 데이터 구조입니다. 임의 액세스의 전형적인 그림은 책입니다 – 책의 각 페이지는 다른 사람과 독립적으로 열 수 있습니다. 임의 액세스는 이진 검색과 같은 많은 알고리즘에 매우 중요합니다. 먼저 큐가 비어 있으므로 머리 및 꼬리 포인터를 초기화해야 합니다. 즉, 큐에 추가된 첫 번째 요소가 큐에서 제거되는 첫 번째 요소가 됩니다. 실제 생활에서 당신은 다양한 큐 예제를 우연히 만났습니다. 티켓 카운터에서 사람의 대기열과 같은, 첫 번째 사람이 큐에 입력 먼저 티켓을 가져옵니다. 스택은 마지막 IN-first-out(LIFO) 원칙에 따라 작동하므로 큐를 스택과 혼동하지 마십시오.

    순환 큐 구현은 분할의 나머지 부분을 취하여 계산되는 modulo 연산자(표시%)를 사용하여 수행됩니다(예: 8%5는 3). modulo 연산자를 사용 하 여 순환 배열로 큐를 볼 수 있습니다., 여기서 “래핑” “뒤로 % array_size”로 시뮬레이션할 수 있습니다. 후면 및 전면 인덱스 외에도 큐의 요소 수를 계산하기 위한 cur라는 또 다른 인덱스를 유지합니다. 이 인덱스를 갖는 것은 구현의 논리를 단순화. 즉, 큐 용량이 100이고 크기가 10이고 후면이 99에 있다고 가정하면 앞이 89가 됩니다. 이제 대기열에 새 요소를 대기열에 넣으면 후면이 100이 아닌 0으로 업데이트되어야 합니다. 그렇지 않으면 배열 인덱스는 경계를 넘어갑니다. 배열을 사용하여 큐, 큐 및 큐 제거 작업을 구현하는 C 프로그램을 작성합니다. 이 게시물에서는 C 프로그래밍의 배열을 사용하여 큐 구현을 설명합니다. C 언어로 배열을 사용하여 큐 데이터 구조를 구현하는 방법을 알아봅니다.

    나중에 기본 큐 작업을 큐 및 큐 제거를 구현하는 방법을 배웁니다. 이 게시물에서는 C 언어로 배열을 사용하여 큐 구현을 설명합니다.