Stack

  1. What is Stack?
  2. Stack Types
  3. Stack Operations
  4. Applications of Stack
  5. Practice Problems
    • Implement Stack from Scratch
    • Implement Queue from Scratch
    • Implement 2 stack in an array
    • Find the middle element of a stack
    • Implement "N" stacks in an Array
    • Check the expression has valid or Balanced parenthesis or not.
    • Reverse a String using Stack
    • Design a Stack that supports getMin() in O(1) time and O(1) extra space.
    • Find the next Greater element
    • The celebrity Problem
    • Arithmetic Expression evaluation
    • Evaluation of Postfix expression
    • Implement a method to insert an element at its bottom without using any other data structure.
    • Reverse a stack using recursion
    • Sort a Stack using recursion
    • Merge Overlapping Intervals
    • Largest rectangular Area in Histogram
    • Length of the Longest Valid Substring
    • Expression contains redundant bracket or not
    • Implement Stack using Queue
    • Implement Stack using Deque
    • Stack Permutations (Check if an array is stack permutation of other)
    • Implement Queue using Stack  
    • Implement "n" queue in an array
    • Implement a Circular queue
    • LRU Cache Implementationa
    • Reverse a Queue using recursion
    • Reverse the first “K” elements of a queue
    • Interleave the first half of the queue with second half
    • Find the first circular tour that visits all Petrol Pumps
    • Minimum time required to rot all oranges
    • Distance of nearest cell having 1 in a binary matrix
    • First negative integer in every window of size “k”
    • Check if all levels of two trees are anagrams or not.
    • Minimum sum of squares of character counts in a given string after removing “k” characters.
    • Queue based approach or first non-repeating character in a stream.
    • Next Smaller Element