Level 3Exercise #60
Undo recent edits
Apply 'undo' commands to the latest saved edit and return remaining edits.
What you’ll practice
This Level 3 exercise focuses on deque stack in the Collections curriculum. Solve the challenge prompt above using clear, idiomatic Python and the relevant language or standard-library tools.
Relevant Python reference: collections.deque.
Sample Test Cases
Example #1
Input:
apply_undos(['type A','type B','undo'])Output:
['type A']Further Reading
Reference Solution
Reveal Reference Solution
def apply_undos(commands: list[str]) -> list[str]: from collections import deque history = deque() for command in commands: if command == 'undo' and history: history.pop() elif command != 'undo': history.append(command) return list(history)Pro Tips & Keyboard Shortcuts
Color Theme
Ctrl + K then T
Open VS Code Color Theme Quick Pick to select from 20 dark and light themes.
Editor SettingsCtrl + K
Open practice settings drawer to toggle line numbers, indenting, font size & hints.
Search MenuCtrl + /
Expand sidebar menu, focus search bar, and highlight search text instantly.
Focus Code Editor
Esc or Ctrl + `
Instantly highlight and focus code editor from anywhere, restoring cursor right where you left off.
Normal ViewEsc
Collapse sidebar and close all popups or settings drawers for clean focus view.