Queue
/*
큐
*/
#include <iostream>
using namespace std;
#define MAX 3
int rear = -1;
int front = -1;
int Q[MAX];
bool isFull();
bool isEmpty();
void enQueue(int item);
int deQueue();
//삽입
void enQueue(int item)
{
if (isFull())
cout << "Queue is Full" << endl;
else
{
rear = rear + 1;
Q[rear] = item;
}
}
//삭제
int deQueue()
{
if (isEmpty())
{
cout << "Queue is Empty" << endl;
return 0;
}
else{
front = front + 1;
return Q[front];
}
}
//Empty 확인
bool isEmpty()
{
if (front == rear)
return true;
else return false;
}
//Full 확인
bool isFull()
{
if (rear == MAX - 1)
return true;
else
return false;
}
//메인
int main(void)
{
for (int i = 0; i < MAX; i++)
{
cout << "enQueue: " << i + 1 << endl;
enQueue(i + 1);
}
for (int i = 0; i < MAX; i++)
{
cout <<"Dequeue: "<< deQueue() << endl;
}
return 0;
}
'Programming > Algorithm' 카테고리의 다른 글
[C++] Queue List (큐 리스트) (0) | 2014.10.14 |
---|---|
[C++] 원형 큐(Circular Queue) 소스 (0) | 2014.10.14 |
[C++] 계산기 구현 (0) | 2014.10.13 |
[C++] 분할 정복(Quick Sort) (0) | 2014.10.13 |
[C++] 분할정복(거듭제곱) (1) | 2014.10.13 |