Concept
Preorder, inorder and postorder visit a tree's nodes in different orders, and breadth-first visits level by level. Which one you need follows from what the problem asks: copy, sort, delete or print by depth.
The tutor works through these with you, in conversation and code. A session ends when you have shown them, not when a video does.
A few lines that show Tree traversals doing its job.
from collections import deque
def inorder(node, out):
if node:
inorder(node.left, out)
out.append(node.value)
inorder(node.right, out)
def by_level(root):
levels, queue = [], deque([root] if root else [])
while queue:
levels.append([n.value for n in queue])
queue = deque(c for n in queue for c in (n.left, n.right) if c)
return levelsUsing recursion for level order. Depth-first recursion naturally goes down before across; level order needs a queue, and faking it with recursion needs an extra depth parameter and a second pass.
Your roadmap puts these before Tree traversals, unless you already know them.
Once a session shows you understand Tree traversals, it comes back for review. Each review takes a minute and tells the memory model how well you still know it.
Topics that build on Tree traversals.