1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| #include<iostream> #include<cstdlib> #define MAX_NUM 10 #define ElemType int using namespace std ;
typedef struct queue{ ElemType elem[MAX_NUM] ; int front ; int rear ; }Queue;
void Print_Queue(Queue* q){ for(int i=q->front; i<=q->rear; i++) { if(i==q->rear){ printf("Q[%d] = %d \n",i,q->elem[i]) ; return ; } printf("Q[%d] = %d , ",i,q->elem[i]) ; } }
Queue* init_Queue(int num){ Queue* q = (Queue*)malloc(sizeof(Queue)) ; for(int i=0; i<num; i++) cin >> q->elem[i] ; q->front = 0 ; q->rear = num-1 ; return q ; }
void entry_Queue(Queue* q ,int v){ q->rear ++ ; if(q->rear > MAX_NUM){ printf("OverFlow!\n") ; exit(-1) ; } q->elem[q->rear] = v ; }
ElemType exit_Queue(Queue* q){ ElemType res = q->elem[q->front] ; q->front ++ ; return res ; }
|