Week 14 — Readings & Resources · Recursion (Intro)
Course: Introduction to Computer Science — CS1 / Programming Fundamentals in Python (CSCI 1101) · Silver Oak University (fictional sample) · Prof. Okafor
Objective covered: Objective 8 — base case & recursive case; the call stack; recursion vs. iteration
How to use this page
Everything here is a link to an external resource — open it in your browser; nothing to install. The fastest way to learn this week is to run the examples yourself in the online editor.
Order that matches the lecture: ① what recursion is (base + recursive case) → ② the call stack → ③ recursion vs. iteration.
① Recursion: Base Case & Recursive Case
Read & do — "Python Recursion" (Programiz)
🔗 https://www.programiz.com/python-programming/recursion
Why it's assigned: the clearest plain-language intro, with the factorial example we build in class and an explicit note that a recursive function needs a stopping condition.
⏱ ~10 min
Read — "Recursion" (W3Schools Python)
🔗 https://www.w3schools.com/python/gloss_python_function_recursion.asp
Why it earns the click: a short, runnable example with a "Try it Yourself" button.
⏱ ~5 min
② The Call Stack — WATCH it run
Do — visualize recursion in Python Tutor
🔗 https://pythontutor.com/
Why it's essential this week: paste a recursive factorial or countdown, click Visualize Execution, and step forward to watch the call stack grow and unwind. This is the single best way to understand recursion — do it for every example.
⏱ ~10 min
③ Recursion vs. Iteration · and Functions Refresher
Reference — "Defining Functions" (official Python Tutorial, §4.8)
🔗 https://docs.python.org/3/tutorial/controlflow.html
Why it's assigned: the source of truth on def and return — the machinery every recursive function is built from.
Optional one-stop references (free online)
- Run your code: 🔗 https://www.online-python.com/
- Run your code: 🔗 https://www.online-python.com/ · Visualize it: 🔗 https://pythontutor.com/
Pick-one quick path (≈15 min total)
- Read "Python Recursion" (Programiz) and run the factorial example (group ①).
- Paste
countdowninto Python Tutor and step through the call stack (group ②).
Heads-up (links rot): if a link ever fails, tell Prof. Okafor and use the official Python Tutorial (docs.python.org/3/tutorial) in the meantime.
~ Prof. Okafor's edition · Fall 2026 · built with thecoursemaker.com