Concepts of Stack in Data Structure

This tutorial covers the basic concepts of stack in data structure, stack application and use , we also learn about push and pop operations in stack.  

What is stack in data structure?

What is stack ?

Push and pop operation in stack in data structure

Application and use of stack in data structure.

operations on stack data structure

(A) What is stack ?

Stack in data structure is an abstract data type. Stack a linear data structure that allows inserting and deleting elements in a specific manner. When we want to insert an element in stack it can be added a top of the stack. All the insertion and deletion is performed at this TOP in stack in data structure.
  • It use First in last out(FILO) process or Last in first out ( LIFO)
  • Suppose if S={S0,S1,S2……Sn-1}
   Here S0 is a bottom element and stack has n element.

  This Top is a variable which contain position of the newly inserted element.

(B) Operations on stack

Following operations are performed on stack.
Push and Pop operations on stack
  • The insertion of element into stack is called PUSH operation in stack.
  • The deletion of element from stack is called POP operation in stack.
  • PUSH (stack,integer) = stack, it add element shown by ‘i’ on to the stack s.
  • POP (stack) = stack,it will remove the top element of the stack s.
  • Get top (stack) = integer
  • Isempty (stack) = boolean
  • Isfull (stack) = boolean
  • As stack is a ordered collection of items, and array is also an ordered collection of items, still array cannot be treated as a stack because of the following point:
  • The no of element in array are fixed whereas for a stack there is no bound.

applications of stack

We can access any element in array by its index but for a stack only the top element can be assessed

Algorithm for Push Operation

Steps to add an item in stack data structure are as follows:
  1. At first we check if the stack is fullor not.
  2. If the stack is full, then in this situation print error of overflow and exit the program.
  3. If the stack is not full, then at first we increment the top value by one and add the element at this new position ( new value of TOP variable).
   Void push(s,N,Top,x)
    /*S-name of stack
    N-sixe of stack*/
      printf(“stack is overfull”)

Algorithm for POP operation

Steps to remove an item from stack data structure are as follows:
  1. At first we check if the stack is empty or not.
  2. If the stack is empty, then in this situation we print error of underflow and exit the program.
  3. If the stack is not empty, then print the element at the top and then we have to decrement the top by one. This new value of Top variable is Top at this time.
int pop(S,N,Top)
  /*s- name of stack
     N-size of stack*/
     int y;
     if(top== -1)
         printf(“stack is underflow”);
          top= top – 1;

(C) Use of Stack

Different uses of stack in data structure are as follows -

Parsing: stacks are used by compilers to check the syntex of the program and for generating executable code.

Function calls: when a function is called all local storage for the function is allocated on the system “stack” ,and the return address(within the calling function) is also pushed on the system stack.

Implementing Recursion:   they can be used to implement recursion if the programming language does not provide the facility for the same.

Reversing a list: we can also use stack for reversing a list.

(D) Application of stack

There are following applications of stack
  • Real life
    • Pile of books
    • Plate trays
  • More applications related to computer science
    • Program execution stack (read more from your text)
    • Evaluating expressions
  • Recursion
  • Reverse polish notation(infix to postfix)
  • Postfix evolution
  • Prefix to postfix
  • Fibinocci series
  • Tower of hanoi

(D) Conclusion 

Stack is a very useful data structure. Local variable in a function is also store in stack. In this tutorial we studied about basic concepts of stack in data structure, stack application and use , we also learn about push and pop operations in stack.  



addressing modes types,1,advance-java,1,advancejava,1,aktu entrance exam,1,aktu exam schedule,1,ASP,1,bare machine,1,base register and limit register,1,C Programming,12,C Plus Plus,1,C Programming,6,C Programming MCQ,2,C Programming Questions,2,C programming study material for gate exam,9,Cache Memory,1,CBNST Program,1,Childcare,1,CJ,1,Cloud Computing,1,Computer Architecture,2,Computer architecture based questions for gate exam,11,Computer Network,4,Computer Network Study Material,2,Computer network study material for gate,1,Computer Networks,6,Computer networks GATE Questions,1,Computer Science Study Material for Gate,18,computer science study material for gate exam,28,contiguous memory allocation,2,Core Java,4,cyber crime report,1,Cyber crime status,1,cybercrime and security,1,cybercrime examples,1,Data Structure,2,Data Structure Questions,1,Data Transmission Architecture,1,Data Transmission in wsn,1,DBMS,5,dbms question paper,1,DE,1,Digital Electronics,1,DS,4,Dynamic memory allocation in c,1,Electroencephalogram,1,file management in operating system notes,1,Gate 2017,5,Gate 2017 Admit card,1,Gate 2017 Exam Schedule,1,Gate 2017 Syllabus,1,gate 2018,1,gate cse study material,1,gate practice set,10,gate study material for computer science,15,Gate study material for computer science 2017,1,GatePreviousYear,1,General,3,HCL Aptitude Test,1,HR Interview Questions,1,HTML,4,Important Date of Gate 2017 Exam,1,Information Security Policy,1,internal and external fragmentation,1,JS,1,lagrange's interpolation formula,1,lagrange's interpolation formula examples,1,memory fragmentation,1,memory management,1,memory management questions and answer in os,1,Motivational,4,NCER,1,Numerical Techniques Lab,1,OOT,1,Operating System,10,Operating System Gate Questions,1,Operating System Objective Questions,4,Operating System Questions Bank,1,Operating system questions for gate,1,Operating System Study material,2,operating system study material for gate exam,13,Operating system tutorial,2,page swapping,1,paged memory allocation,1,paged memory allocation in operating system,1,Pointer in C,4,Process based question for gate,1,Regression testing,1,relocation in memory management,1,relocation registe,1,relocation register,1,resident monitor,1,resident monitor in operating system,1,routing table,1,Software Engineering,10,Software Engineering baes study material for gate,1,software engineering interview questions,1,Software Quality Assurance,3,software verification methods,1,Stack,1,Structure in C,1,Study Material for gate Computer Science,8,swapping in memory management,1,swapping in operating system,1,TCS Code Vita,1,TCS Interview Questions,1,Technical Interview,1,Technical Questions from DBMS,1,Thrashing in Operating System,1,Threads concept in operating system,1,Tips to Learn Coding,1,Top 30 Core Java Interview Questions with Answer,1,Types of operating system,1,UML,1,website uses cookies,1,what is cookies website,1,What is process control block ?,1,what is software testing?,1,Wireless Sensor Network,3,worst fit algorithm for memory allocation,1,XML,2,
Computer Science Junction: Concepts of Stack in Data Structure
Concepts of Stack in Data Structure
This tutorial covers the basic concepts of stack in data structure, stack application and use , we also learn about push and pop operations in stack.
Computer Science Junction
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share. STEP 2: Click the link you shared to unlock Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy