Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Learning Stack data structure [Java]
Rating: 4.8 out of 5(8 ratings)
518 students

Learning Stack data structure [Java]

Problem solving using Stacks
Created byMonish Njs
Last updated 2/2023
English

What you'll learn

  • How to use Stack Data structure
  • When to use Stack data strcuture
  • How to identify if the problem can be solved using Stack
  • Solving problems in stack

Course content

1 section5 lectures1h 6m total length
  • Introduction to Stacks10:28
  • Check if Parentheses are balanced12:48
  • Backspace string compare10:31
  • Simplify path13:35
  • Next greater element19:12

    question link - https://practice.geeksforgeeks.org/problems/next-larger-element-1587115620/1?utm_source=gfg&utm_medium=article&utm_campaign=bottom_sticky_on_article

Requirements

  • Required to know basic Core java

Description

Stack:

Stack stores elements of the same data type.

We can insert, and remove elements in the stack in the Last In First Out policy (LIFO)


Declaration

Stack<Type> variable_name = new Stack<>();

Stack<Integer> stack = new Stack<>();


Methods used in Stack:


stack_name . push() - insert element into a stack

stack_name . peek() - checks the topmost element in the stack

stack_name . pop() - removes the topmost element in the stack

stack_name . size() - returns the number of elements in stack

stack_name . empty() - returns true / false. if stack is empty, it returns true. if stack is not empty it retuns false

stack_name . clear() - clears the stack

stack_name . contains(value) -  returns true if the value we check is there in stack or else it returns false
stack_name remove(index) - removes the value in given index

stack_name . search(value) - searches the value in stack and returns us the index of the value if present.


Iterating stack:


We can go through the stack elements in two ways.

1. Popping the elements

We can pop the stack elements one by one and go through all the elements.


2. For each loop

We can go through the stack by a for loop as below


for(String s : stack_name)

{

//Stack will be iterated from bottom to top direction in this way

}


How to identify if that problem can be solved using a stack


1. when we want to evaluate brackets, expressions in certain order we can use stacks.

2. When we wanted to use backspace character in keyboard or any similar sitautions, we can use stacks

3. When we want to delete or remove the last elements we can use stack.

4. When we want to backtrack to something and then again to move forward direction multiple times we can use stack.

5. We can use stack to find some peak elements (assuming the value plotted something like graph) we can use stacks



Who this course is for:

  • Developers who are learning Data structures and Algorithms