Stacks & Queues

Learn LIFO and FIFO data structures

Stacks follow Last-In-First-Out (LIFO) principle, while Queues follow First-In-First-Out (FIFO). These abstract data types are crucial for managing data in specific orders and have numerous real-world applications.

Key Concepts

  • Stack: LIFO - Last element added is first removed
  • Queue: FIFO - First element added is first removed
  • Common operations: Push, Pop, Peek in O(1)
  • Used in recursion, parsing, BFS/DFS algorithms
  • Variants: Priority Queue, Deque, Circular Queue

Problems

Valid Parentheses

EasySoon

Check if string has valid bracket combinations

StackString

Min Stack

MediumSoon

Design stack with constant time min operation

StackDesign

Daily Temperatures

MediumSoon

Find next warmer temperature for each day

Monotonic Stack

Implement Queue using Stacks

EasySoon

Build FIFO queue using two stacks

StackQueueDesign

Largest Rectangle in Histogram

HardSoon

Find largest rectangle area in histogram

Monotonic StackArray
Stacks Queues - DSA Visualizer | AllVisualizer