Which of the following principle does stack use?
(A). Linear data structure
(B). LIFO
(C). Hierarchical data structure
(D). None of these
Question’s Answer: LIFO
FIFO means first element added to the queue is the first one to be removed from queue.
Data Structure | Principle |
Stack | LIFO |
Queue | FIFO |
Array | linear data structure without an inherent ordering principle |
Tree | hierarchical data structure without an inherent ordering principle |
Linked List | linear data structure without an inherent ordering principle |
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 | /* C++ program to implement basic stack operations */ #include <bits/stdc++.h> using namespace std; #define Maximum 20 class Stack { int top; public: int a[Maximum]; // Maximum size of Stack Stack() { top = -1; } bool push(int x); int pop(); int peek(); bool isEmpty(); }; bool Stack::push(int x) { if (top >= (Maximum - 1)) { cout << "Stack Overflow"; return false; } else { a[++top] = x; cout << x << " pushed into stack"<<endl;; return true; } } int Stack::pop() { if (top < 0) { cout << "Sorry! Stack Underflow"; return 0; } else { int x = a[top--]; return x; } } int Stack::peek() { if (top < 0) { cout << "Great! Stack is Empty"; return 0; } else { int x = a[top]; return x; } } bool Stack::isEmpty() { return (top < 0); } // Driver program to test above functions int main() { class Stack s; s.push(3); s.push(7); s.push(1); cout << s.pop() << " Popped from stack"<<endl;; //display top element of stack after popping cout << "Top element is : " << s.peek() << endl; //display all elements in stack : cout <<"Elements present in stack : "; while(!s.isEmpty()) { // display top element in stack cout << s.peek() <<" "; // remove top element in stack s.pop(); } return 0; } |
Output
3 pushed into stack
7 pushed into stack
1 pushed into stack
1 Popped from stack
Top element is : 7
Elements present in stack : 7 3