Skip to content
Skip to the lesson
← RoadmapDay 17 of 90Data & Algorithms2h 15m

Stacks, queues, and the call stack you already met

By the end of today you can say which of last-in-first-out or first-in-first-out a problem needs, and explain the call stack from Day 4 as an instance of a structure rather than a special language feature.

YesterdayOn Day 4 you watched frames appear and disappear in Python Tutor, and on Day 6 you read them in a stack trace. Today you learn what that structure is called.

TomorrowTomorrow, recursion, which is what happens when a function uses that stack deliberately.

01

Why this matters

Stacks and queues are the two orderings almost every system uses. A queue on Day 63 is the same idea running between machines, and the call stack you read in a trace on Day 6 is a stack you can now name.

  • Stacks
  • Queues
  • The call stack as a stack
  • Choosing a structure
  • Linked lists
02

Learn it

70 min

Copy this into Claude or ChatGPT. It quizzes you before it explains anything, which is deliberate. The resources under it are how you check what it told you.

Today's Master Prompt

Free · sign in

A prompt written for this day alone: your level, the exact scope, what to leave out, and an instruction to quiz you before it explains anything. Paste it into Claude or ChatGPT and it teaches you today's material.

Sign in to continueNo card, now or later.

Check it against something that is not a model

An assistant can be fluent and wrong, and on a topic you met today you will not catch it. These cover the same ground and were made by people who do this for a living, so they are what you hold the explanation up against. They are other people's work and we only link to them, so judge them for yourself.

3 hand-picked resources

Free · sign in

Videos, official docs and articles covering the same ground, each opened and annotated by hand. They are what you check the assistant against on a day you cannot yet catch it being wrong.

Sign in to continueNo card, now or later.
03

Build it

45 min

Write a bracket matcher using a stack that handles three bracket types and reports the position of the first mismatch. Then implement a queue with a plain list and again with deque, and time removing 100,000 items from the front of each.

04

Recall it

20 min

Answer out loud, reveal, then mark honestly whether you had it. That score is the only thing on this page you do not get to choose.

4 recall questions

Free · sign in

Questions you answer from memory, then grade yourself against the real answer. The score is carried into the mastery rating below it, so an honest miss cannot quietly become a tick.

Sign in to continueNo card, now or later.
05

Rate it

Completion and mastery are tracked separately. Be honest, because an inflated rating only means the concept resurfaces sooner.

Mastery tracking

Free · sign in

Rate yourself against five named criteria per concept. Completion and mastery are tracked separately, and anything you rate shakily comes back automatically on a spaced schedule.

Sign in to continueNo card, now or later.
06

Recap

  • 01A stack returns the most recent item; a queue returns the longest waiting
  • 02The call stack is a stack, and a trace is that stack printed
  • 03Removing from the front of a list shifts everything after it
  • 04Ask what should come out next, and the structure chooses itself

Your progress

Free · sign in

Mark days complete, pick up where you left off across devices, and watch completion and mastery diverge. Free, and the account exists only so ninety days of work cannot vanish with a cleared browser.

Sign in to continueNo card, now or later.