Programming/자료구조&알고리즘
[자료구조] 기본 Queue 소스
영상털이범
2014. 3. 21. 18:29
반응형
큐 소스입니다.
#include <stdio.h> #include <stdlib.h> // 큐 크기 #define QSIZE (5) // 큐 선언 int queue[QSIZE]; int front, rear; // front == 0, rear == 0 int is_full() { return rear == QSIZE; } void put(int data) { queue[rear] = data; rear++; } int is_empty() { return front == rear; } int get() { int temp = queue[front]; front++; return temp; } // 큐 출력 void display() { int i; system("cls"); // 콘솔창 초기화 printf("\n"); printf("%*s\n", (rear+1)*4, "rear"); printf("%*s\n", (rear+1)*4, " | "); for(i=0; i< QSIZE; i++) printf("[%2d]", queue[i]); printf("\n"); printf("%*s\n", (front+1)*4, " | "); printf("%*s\n", (front+1)*4, "front"); getchar(); } void main() { int i; display(); for(i=0; i<7; i++) { if(!is_full()) put(i+1); display(); } for(i=0; i<7; i++) { if(!is_empty()) get(); display(); } }
반응형