Linked List Implementation of Queue in C

1 477 vues

Publié le

Publié dans : Technologie, Business
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 477
Sur SlideShare
0
Issues des intégrations
0
Intégrations
2
Actions
Partages
0
Téléchargements
18
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Linked List Implementation of Queue in C

  1. 1. /*Linked List Implementation of the Queue in CAuthor: Kasun Ranga WijeweeraEmail: krw19870829@gmail.comDate: 20130514*/#include<stdio.h>#include<conio.h>#include<alloc.h>typedef struct queueNode *link;struct queueNode{int data;link next;};typedef struct{link front;link rear;}queue;
  2. 2. void initQueue(queue *q){q->front=NULL;q->rear=NULL;}int isEmpty(queue *q){if((q->front)==NULL){return 0;}else{return 1;}}void putQueue(queue *q,int x){link t=(link)malloc(sizeof(struct queueNode));t->data=x;t->next=NULL;
  3. 3. if(isEmpty(q)){q->rear->next=t;q->rear=t;}else{q->front=t;q->rear=t;}}int getQueue(queue *q){link t=q->front;int x=t->data;if((q->front)==(q->rear)){q->front=NULL;q->rear=NULL;}else{
  4. 4. q->front=t->next;}free(t);return x;}void printQueue(queue *q){link t=q->front;while(t!=NULL){printf("%d ",t->data);t=t->next;}}void main(){queue *q;int x;clrscr();
  5. 5. q=(queue*)malloc(sizeof(queue));initQueue(q);putQueue(q,10);putQueue(q,20);putQueue(q,30);putQueue(q,40);putQueue(q,50);printf("n");printQueue(q);if(isEmpty(q))x=getQueue(q);printf("n");printQueue(q);putQueue(q,60);putQueue(q,70);printf("n");printQueue(q);getch();
  6. 6. }

×