My Profile
Active Members
TodayLast 7 Days
more...
Awards & Gifts
Online Exams
Fresher Jobs
Our fresher job section is exclusively for fresh graduates! Find jobs for freshers in major Indian
cities including Bangalore, Chennai, Hyderabad, Pune or Kochi
Resources
Find educational articles, blogs, discussion threads and other resources.
Colleges
Find details about any college in India or search for courses.
Advertisements
|
working of queue using linked list
Posted Date: 02 Jun 2008 Resource Type: Articles/Knowledge Sharing Category: Education
|
Posted By: Vidya Member Level: Diamond Rating: Points: 1
|
|
|
|
Program : Program shows working of queue using linked list
#include #include #include
typedef struct queue_link { int data; struct queue_link *link; }node;
/********** Function Declaration begins **********/ void enqueue(node **, node **, int); void dequeue(node **); void display(node *); /********** Function Declaration ends **********/
void main() { node *front = NULL, *rear = NULL; int ch,item; printf(“\n\t\t Program of queue using linked list”); do { printf(“\n\t\tMenu”); printf(“\n\t\t1.enqueue”); printf(“\n\t\t2.dequeue”); printf(“\n\t\t3.display”); printf(“\n\t\t4.exit”); printf(“\n\t\tEnter choice : “); scanf(“%d”,&ch); switch(ch) { case 1: printf(“Enter an data to be enqueueed : “); scanf(“%d”,&item); enqueue(&front,&rear,item); break; case 2: dequeue(&front); break; case 3: printf(“\n\t**** Queue *****\n”); display(front); break; case 4: exit(0); default: printf(“\n wrong choice:”); } } while (ch!=4); printf(“\n”); }
/********** Inserting elements in queue **********/ /********** Function Definition begins **********/ void enqueue( node **front,node **rear,int item) { node *new_node;
new_node = (node *)malloc(sizeof( node)); new_node->data = item; new_node->link = NULL;
if ((*front) == NULL) { (*front) = new_node; (*rear) = new_node; } else { (*rear)->link = new_node; (*rear) = new_node; } return; } /********** Function Definition ends **********/
/********** Deleting element from queue **********/ /********** Function Definition begins **********/ void dequeue(node **front) { node *temp;
if((*front) != NULL) { temp = *front; (*front) = (*front)->link; free(temp); } return; } /********** Function Definition ends **********/
/********** Displaying elements of queue **********/ /********** Function Definition begins **********/ void display(node *record) { printf(“\nRoot”); while (record != NULL) { printf(“-> %d”,record->data); record = (record->link); } printf(“->NULL\n”); return; } /********** Function Definition ends **********/
? OUTPUT Program of queue using linked list Menu 1.enqueue 2.dequeue 3.display 4.exit Enter choice : 1 Enter an data to be enqueueed : 11
Menu 1.enqueue 2.dequeue 3.display 4.exit Enter choice : 1 Enter an data to be enqueueed : 22 Menu 1.enqueue 2.dequeue 3.display 4.exit Enter choice : 1 Enter an data to be enqueueed : 33 Menu 1.enqueue 2.dequeue 3.display 4.exit Enter choice : 3 **** Queue ***** Root-> 11-> 22-> 33->NULL Menu 1.enqueue 2.dequeue 3.display 4.exit Enter choice : 2 Menu 1.enqueue 2.dequeue 3.display 4.exit Enter choice : 2 Menu 1.enqueue 2.dequeue 3.display 4.exit Enter choice : 3 **** Queue ***** Root-> 33->NULL Menu 1.enqueue 2.dequeue 3.display 4.exit Enter choice : 2 Menu 1.enqueue 2.dequeue 3.display 4.exit Enter choice :3 **** Queue ***** Root->NULL Menu 1.enqueue 2.dequeue 3.display 4.exit Enter choice : 4
|
Responses
|
No responses found. Be the first to respond and make money from revenue sharing program.
|
|
|