Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Max Stack Data Structure

EasyPython00:00
Practice interviewer
In session
5 left
00:00

Your question is Max Stack Data Structure. Start with the requirements on the right.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.

Problem

An Autodesk Fusion command-history prototype needs a stack that can return its largest stored value without scanning all commands. Implement max_stack(operations) to process stack operations efficiently.

Formal Specification

The input is a list of operation arrays. Each operation is either ["push", value], ["pop"], ["top"], or ["peekMax"], where value is an integer. Return a list containing the results of every pop, top, and peekMax operation in their original order. Push operations do not add a result.

The stack stores integers and starts empty. You may assume pop, top, and peekMax are never called when the stack is empty.

Constraints

  • 1 <= operations.length <= 10^5
  • -10^9 <= value <= 10^9
  • Operation names are exactly push, pop, top, or peekMax
  • Every query operation is valid for the current stack state

Function Signature

def max_stack(operations):
Your solutionPython 3
You need to log in / sign up to run or submit.
Run your code to see test output