data structure by digvijay
TRANSCRIPT
STACK REPRESENTATION
BY- DIGVIJAY SINGH KARAKOTI
WHAT IS STACK?Stack is the non-linear non-primitive data
structure or an ordered pair of elements.
A Stack is a LIFO structure which follows the principal of “LAST IN FIRST OUT”, which
depicts the insertion of last element in the stack and deletion of first element from the
stack from one end called “TOP” of the stack.
Some real life examples of Stack
APPLICATIONS OF STACK
Expression evaluation
Infix, Prefix and Postfix Notation
Expression conversion
Memory Management
Recursion
OPERATIONS PERFORMED IN STACK
The major operations performed by stackare:
PUSH( ) – This operation is used to insert the element into the stack. So, it is also known as “INSERTION” operation.
POP( ) - This operation is used to delete or retrieve the element from the stack. So, it is also known as “DELETION” operation.
PUSH OPERATION
This function will add elements/items into the stack. Whenever we add an element
into the stack the pointer TOP gets incremented as:-
This is used to show the position of the element in the stack.
TOP+1 or TOP++
PUSH operation on stack is to add values into the stack. Let us assume that 5 items 30, 20, 25, 10 and 40 are to be placed on the stack. The items can be inserted one by one as shown in
following figure:-
ALGORITHM FOR PUSH OPERATION
PUSH(MAXSTK, ITEM, TOP)
STEP 1: If TOP = MAXSTK THEN [Stack already filled?]
Print "OVERFLOW" Go to step 4 End if
STEP 2: TOP = TOP + 1 [Increase TOP by 1]
STEP 3: Set STK[TOP] = ITEM [Insert ITEM in new TOP position]
STEP 4: End
Program implementation of PUSH operation
void push(){ int item;If(TOP==maxsize-1){ printf(“\n Stack is full”);getch();exit(0);}else{ printf(“\n Enter the element to be inserted”);scanf(“%d”, &item);TOP=TOP+1;stack[TOP]=item;}}
POP OPERATION
This function will delete elements/items from the stack. Whenever we add an
element into the stack the pointer TOP gets decremented as:-
This is used to show the position of the element in the stack
TOP-1 or TOP--
POP operation on stack is to delete or retrieve values from the stack. Let us assume that 4 items 15, 12, 10 and 5 are to be
deleted from the stack. The items can be deleted one by one as shown in following figure:-
Figure. Deletion operations
ALGORITHM FOR POP OPERATION
POP[STACK,TOP,ITEM]STEP 1: If TOP=0
Print ”Underflow”
STEP 2: Set ITEM=STACK[TOP]
STEP 3: Set TOP=TOP-1
STEP 4: Return
Program implementation of POP operation
int pop(){ int item;if(TOP==-1){ printf(“\n Stack is empty”);getch();exit(0);}else{ item=stack[TOP];TOP=TOP-1;printf(“\n Item deleted is= %d”, item);}return(item);}