반응형 원형 큐2 원형 큐 구현 소스 #include #define MAX 10 int queue[MAX]; int front, rear; void init_queue(void) { front = rear = 0; } void clear_queue(void) { front = rear; } int put(int k) { if((rear+1)%MAX == front) { printf("\n Queue overflow."); return -1; } queue[rear] = k; rear = ++rear%MAX; return k; } int get(void) { int i; if(front == rear) { printf("\n Queue underflow."); return -1; } i=queue[front]; front = ++front%M.. 2007. 3. 29. 스택과 큐, 데크 스택과 큐, 데크 3.1 스택(Stack) • 삽입과 삭제가 한쪽 끝에서만 발생하는 선형 리스트 • top(stack pointer) 포인터 : 자료의 삽입과 삭제가 발행하는 부분 → top 포인터는 항상 제일 위에 있는 자료를 가리킴 • BOTTOM(밑바닥) 포인터 : 막혀있는 다른 한쪽 끝 • PUSH :자료를 삽입하는 연산, POP : 자료를 삭제하는 연산, TOP 연산 : 현재top 포인터가 가리키는 자료의 내용을 조사하는 연산 • 자료의 삽입: top 포인터가 가리키는 위치보다 1이 증가한 위치에 → top = top + 1 • 자료의 삭제: top 포인터가 가리키는 위치의 자료가 → top = top - 1 • top의 초기치는 -1이다 그림 3.1 스택의 구조 • 입출력 정책(policy):.. 2007. 3. 29. 이전 1 다음 반응형