Data Structure - Stack and Queue
[SET – 1]

1

Complete the class with all function definitions for a stack
class stack
{
            int data[10];
            int top;
public :
            stack(){top=-1;}
            void push();
            void pop();
}

Question 2

Change the following infix expression postfix expression.

(A + B)*C+D/E-F

Question 3

Convert the expression (True && False) || !(False || True) to postfix expression. Show the contents of the stack at every step.

Question 4

Use a stack to evaluate the following postfix expression and show the content of the stack after execution of each operation. Don't write any code. Assume as if you are using push and pop member functions of the stack.

AB-CD+E*+ (where A=5, B=3, C=5, D =4, and E=2)

Question 5

Evaluate the following postfix expression using a stack and show the contents of stack after execution of each operation :

            50,40,+,18, 14,-, *,+

Question 6

Evaluate the following postfix expression using a stack and show the contents of stack after execution of each operation :
TRUE, FALSE, TRUE, FALSE, NOT, OR, TRUE, OR, OR, AND

Question 7

Complete the class with all function definitions for a circular queue
class queue
{
            int data[10];
            int front, rear;
public :
            queue(){front=-1;rear=-1}
            void add();
            void remove();
}

Question 8

Each node of a STACK contains the following information, in addition to required pointer field :
i) Roll number of the student
ii) Age of the student
Give the structure of node for the linked stack in question TOP is a pointer which points to the topmost node of the STACK. Write the following functions.
i) PUSH() - To push a node to the stack which is allocated dynamically
ii) POP() - To remove a node from the stack and release the memory.

Question 9

Write a function in C++ to perform a DELETE operation in a dynamically allocated queue considering the following description :

struct Node
{
            float U,V;
            Node *Link;
};
class QUEUE
{
            Node *Rear,*Front;
public:
            QUEUE(){Rear=NULL; Front=NULL;}
            void INSERT();
            void DELETE();
            ~QUEUE();
};

Question 10

Give the necessary declaration of a linked list implemented queue containing float type values. Also write a user-defined function in C++ to delete a float type number from the queue.