Stack implementation using linked list

We will be understanding the stack implementation using linked list. So, please understand the link list before proceeding. Lets understand how we can implement the different operation using linked list. CPP implementation Here is how we use linked list to implement stack in cpp: #include <iostream> using namespace std; struct node { int info; struct node \*next; }; struct node \*top; int empty() { return((top == NULL)? 1:0); } void push(int n) { struct node \*p; p=new node; if(p!=NULL) { p->info=n; p->next=top; top=p; } else cout<<"Not inserted,No memory available"; } int pop() { struct node \*temp; int x; x=top->info; temp=top; top=top->next; free(temp); return(x); } void print() { int i =0; struct node \* temp; temp = top; cout<<"\\n\\t\\t"; if(temp==NULL) cout<<"\\n\\t\\tNo elements\\n"; else { while(temp!=NULL) { int info = temp->info; cout<info<<" "; temp=temp->next; } cout<<"End of List<<"\\n"; } } ...

Stack ADT

Stacks are an elementary Data Structure where all interaction with the data is done through the looking at the first element. Stacks are last in first out (LIFO) data structures. It is named on the basis of how the elements are removed from it. Opposite to stack is queue, in which the last element is removed, the element which was most old item, and hence it is FIFO or first in first out data structure. ...

This site uses cookies to improve your experience on our website. By using and continuing to navigate this website, you accept this. Privacy Policy