Search⌘ K
AI Features

Solution: Number of Visible People in a Queue

Explore how to calculate the number of visible people to the right in a queue by applying a monotonic decreasing stack. Understand the step-by-step process behind this efficient O(n) algorithm, including visibility rules and stack operations, to solve related coding interview problems confidently.

Statement

You are given an array heights representing n people standing in a queue, numbered from 0 to n - 1 from left to right. Each element heights[i] denotes the height of the person at position i. All heights are distinct.

A person at position i can see a person at position j (i < j) to their right if every person between them is shorter than both heights[i] and heights[j].

Formally, person i can see person j if:

  • i<ji < j and min(heights[i],heights[j])>max(heights[i+1],heights[i+2],...,heights[j1]) ...