Stack Operations using Array
Before
implementing actual operations, first follow the below steps to create an empty
stack:
• Step 1: Include all the header files which are used in the
program and define a constant 'SIZE' with specific value.
• Step 2: Declare all the functions used in stack
implementation.
• Step 3: Create a one dimensional array with fixed size (int stack[SIZE])
• Step 4: Define an integer variable 'top' and initialize with
'-1'. (int top = -1)
• Step 5: In main
method, display menu with list of operations and make suitable function calls
to perform operation selected by the user on the stack.
Stack
Operations using Array:
PUSH(value)
-Inserting value into the stack
In a stack,
push() is a function used to insert an element into the stack. In a stack, the
new element is always inserted at top position. Push function takes one integer
value as parameter and inserts that value into the stack. Following are the
steps to push an element on to the stack:
• Step 1: Check whether stack is FULL. (top == SIZE-1)
• Step 2: If it is FULL, then display "Stack is FULL!!!
Insertion is not possible!!!" and terminate the function.
• Step 3: If it
is NOT FULL, then increment top value by one (top++) and set stack[top] to
value (stack[top] = value).
POP(value)
-Delete a value from the Stack
In a stack, pop()
is a function used to delete an element from the stack. In a stack, the element
is always deleted from top position. Pop function does not take any value as
parameter. Following are the steps to pop an element from the stack:
• Step 1: Check whether stack is EMPTY. (top == -1)
• Step 2: If it is EMPTY, then display "Stack is EMPTY!!!
Deletion is not possible!!!" and terminate the function.
• Step 3: If it
is NOT EMPTY, then delete stack[top] and decrement top value by one (top--).
Create()
-Create and Displays the elements of a Stack
Following are the
steps to display the elements of a stack:
• Step 1: Check whether stack is EMPTY. (top == -1)
• Step 2: If it is EMPTY, then display "Stack is
EMPTY!!!" and terminate the function.
• Step 3: If it is NOT EMPTY, then define a variable 'i' and
initialize with top. Display stack[i] value and decrement i value by one (i--).
• Step 4: Repeat
above step until i value becomes '0'.
gettop ( ): Access the top element of a stack
int topElement (
)
{
return stack[ top
];
}
Empty ( ):Check whether a stack is empty
bool is Empty ( )
{
if ( top == -1
) //Stack is empty
return true ;
else
return false;
}