#include <stdio.h>
#include<stdlib.h>
struct node
{
int data;
struct node*next;
};
struct node*front=0;
struct node*rear=0;
void enqueue(int x)
{
struct node*newnode;
newnode=(struct node*)malloc(sizeof(struct node));
newnode->data=x;
newnode->next=0;
if (rear==0)
{
front=rear=newnode;
rear=newnode;
}
else
{
rear->next=newnode;
rear=newnode;
rear->next=front;
}
}
void dequeue()
{
struct node*temp;
temp=front;
if (front==0&&rear==0)
{
printf("the queue is empty");
}
else if(front==rear)
{
front=rear=0;
free(temp);
}
else
{
front=front->next;
rear->next=temp;
free(temp);
}
}
void display()
{
struct node*temp;
temp=front;
if (front==0&&rear==0)
{
printf("the queue is empty");
}
else
{
while(temp->next!=front)
{
printf(" %d",temp->data);
temp=temp->next;
}
}
}
void peek()
{
if(front==0&rear==0)
{
printf("the queue is empty");
}
else
{
printf("\nThe peek element is: %d",front->data);
}
}
void main()
{
enqueue(7);
enqueue(1);
enqueue(8);
dequeue();
dequeue();
enqueue(4);
enqueue(8);
enqueue(6);
display();
peek();
}
To embed this program on your website, copy the following code and paste it into your website's HTML: