You are on page 1of 11

Stack

A stack is a constrained version of a linked


list
New nodes can be added to the stack and
removed from stack only at the top.
 Stack is referred as Last-in First-Out
(LIFO)data Structure.
Primary methods are used to manipulate
stack are push and pop methods
Push method adds a new node to the top of
the stack
Pop method removes node from top of stack
Stack
Primitive operations on stack :
Create a stack
Insert an element on to the stack
Delete an element from stack
Check whether stack is empty
Check which element is on top of stack
Stack
Stack Empty operations :
int stempty()
{
if(st.top == -1)
return 1;
else
return 0;
}
Stack
Stack Full operations :
int stfull()
{
if(st.top >= size-1)
return 1;
else
return 0;
}
Stack
Stack push operations :
void push(int item)
{
st.top++;
st.s[st.top]=item;
}
Stack
Stack pop operations :
int pop()
{
int item;
item = st. s[st.top];
st.top --;
return(item);
}
Stack-push
stack=empty ,top=-1

10
top

Pushed 10 on stack, stack top is=0

20 top
10

Pushed 20 on stack, stack top is=1


Stack-pop

20 top
10 10
top

Poped 20 on stack, stack top is=0


Poped 10 on stack, stack top is= -1

stack empty
Stack-Applications
Expression Conversion
Expression Evaluation
Parsing well formed parenthesis
Decimal to binary conversion
Reversing a string
Queue
Queue can be defined as ordered collection
of elements that has two ends front and rear
from front one can delete elements
from rear one can add elements

front rear
Trees
Tree is a nonlinear data structure
Tree node contains 2 or more links
Root node is first node in tree
each link in root node refers child node
left child is first node in left sub tree
right child is first node in right sub tree
in-order,pre-order,post-order are traversal
techniques for binary tree.

You might also like