This C++ program, using iteration, implements the list of elements removed from the stack in last in first out mode using a linked list. A linked list is an ordered set of data elements, each containing a link to its successor.
Here is the source code of the C++ program to display the list of elements removed from the stack. The C++ program is successfully compiled and run on DevCpp, a C++ compiler. The program output is also shown below.
Here is the output of the program:
Here is the source code of the C++ program to display the list of elements removed from the stack. The C++ program is successfully compiled and run on DevCpp, a C++ compiler. The program output is also shown below.
*
* C++ Program to Implement Queue using Linked List
*/
#include < iostream >
#include < stdio.h >
#include < conio.h >
using namespace std;
struct node
{
int data;
node *next;
}*front = NULL, *rear = NULL, *p = NULL, *np = NULL;
void push(int x)
{
np = new node;
np->data = x;
np->next = NULL;
if(front == NULL)
{
front = rear = np;
rear->next = NULL;
}
else
{
rear->next = np;
rear = np;
rear->next = NULL;
}
}
int remove()
{
int x;
if (front == NULL)
{
cout << "empty queue\n";
}
else
{
p = front;
x = p->data;
front = front->next;
delete(p);
return(x);
}
}
int main()
{
int n, c = 0, x;
cout << "Enter the number of values to be pushed into queue\n";
cin >> n;
while (c < n)
{
cout << "Enter the value to be entered into queue\n";
cin >> x;
push(x);
c++;
}
cout << "\n\nRemoved Values\n\n";
while(true)
{
if (front != NULL)
cout << remove() << endl;
else
break;
}
getch();
}
Here is the output of the program:
Output Enter the number of values to be pushed into queue 6 Enter the value to be entered into queue 5 Enter the value to be entered into queue 4 Enter the value to be entered into queue 3 Enter the value to be entered into queue 2 Enter the value to be entered into queue 1 Enter the value to be entered into queue 0 Removed Values 5 4 3 2 1 0

No. It is not a stack. It is last-in-first-out only
ReplyDeleteI would like to understand more about what is stack then... As per my understandings Stack is a abstract data structure which is serves as a collection of data in LIFO manner.. Also supporting two operations PUSH and POP.. I believe that's what I have implemented in the program.. Please provide more information about how stack is any different that last-in-first-out data structure..
Delete