Queue_using_Array:
In this Blog, we will be discussing QUEUE
Implementation of QUEUE is little bit Different than STACK.
Understanding QUEUE:
A stack is something that like a bunch of plates arranged one upon another that follows the principle ‘last in first out’
But in Real Life, we are though practical. Let’s suppose in Ticket Counter of a Railway station we cannot follow the principle like ‘last in first out’. We need to change the system like first come first serve basis ‘First in First out’.
So, the basic difference between stack and queue is:
So Implement this operation similar to stack but take some different as well as we will encounter First in First out,
Here is one example of Question :
Question_3_Data_Structure:
Here is one example of Question :
Question_3_Data_Structure:
Write a C program to implement QUEUE using an array. This program must include the following
functions in it.
a. Write a function to INSERT an element at the REAR position of the QUEUE.
b. Write a function to DELETE an element from the FRONT position of the QUEUE.
c. Write a function for “Display” operation which prints the content of the QUEUE.
Here is the correct code:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
#include<stdlib.h> | |
#define MAX 5 | |
void insert(); | |
void delete(); | |
void display(); | |
int q[MAX]; | |
int rear = - 1; | |
int front = - 1; | |
main() | |
{ | |
int choice; | |
printf(" 1.Insert element to queue \n 2.Delete element from queue \n 3. Display element from queue \n 4.Exit \n "); | |
while(1) | |
{ | |
printf("Enter your choice : "); | |
scanf("%d", &choice); | |
switch (choice) | |
{ | |
case 1: | |
insert(); | |
break; | |
case 2: | |
delete(); | |
break; | |
case 3: | |
display(); | |
break; | |
case 4: | |
exit(1); | |
default: | |
printf("Wrong choice \n"); | |
} | |
} | |
} | |
void insert() | |
{ | |
int elm; | |
if (rear == MAX - 1) | |
printf("Queue Overflow \n"); | |
else | |
{ | |
if (front == - 1) | |
front = 0; | |
printf("Inset the element in queue : "); | |
scanf("%d", &elm); | |
rear = rear + 1; | |
q[rear] = elm; | |
} | |
} | |
void delete() | |
{ | |
if (front == - 1 || front > rear) | |
{ | |
printf("Queue Underflow \n"); | |
return; | |
} | |
else | |
{ | |
printf("Element deleted from queue is : %d\n", q[front]); | |
front = front + 1; | |
} | |
} | |
void display() | |
{ | |
int i; | |
if (front == - 1) | |
printf("Queue is empty \n"); | |
else | |
{ | |
printf("Queue is : \n"); | |
for (i = front; i <= rear; i++) | |
printf("%d ", q[i]); | |
printf("\n"); | |
} | |
} |
If you could kindly give the option to compile it, It will be really helpful
ReplyDelete