CS10
The Beauty and Joy of
Computing
Lecture #25 : Tree Recursion
UC Berkeley
EECS
Lecturer SOE
Dan Garcia
2010-11-29
MS KINECT = BODY
I/O
The newly released (and muchhyped) Microsoft Kinect system
for the XBOX 360 used
controller-free body motions to
control games, music, and
movies.
xbox.com/kinect/
Review: What’s in a Strong Solution
For every position
Assuming alternating play
Value …
(for player whose turn it is)
Winning ( losing child)
Losing (All children winning)
Tieing (! losing child, but
tieing child)
Drawing (can’t force a win
or be forced to lose)
Remoteness
How long before game
ends?
W
L
...
WWW
...
L
WWW
T
D
...
WWW
W
D
...
T
WWW
W
Garcia, Fall 2010
UC Berkeley CS10 “The Beauty and Joy of Computing” : Tree Recursion (2)
Review : Example: 1,2,…,10
Rules (on your turn):
Running total = 0
Rules (on your turn):
Add 1 or 2 to running total
Goal
Be the FIRST to get to 10
Example
Ana: “2 to make it 2”
Bob: “1 to make it 3”
Ana: “2 to make it 5”
Bob: “2 to make it 7”
7 ducks (out of 10)
photo
Ana: “1 to make it 8”
Bob: “2 to make it 10” I WIN!
Garcia, Fall 2010
UC Berkeley CS10 “The Beauty and Joy of Computing” : Tree Recursion (3)
Let’s write code to determine value!
0 = Win
P = Position
1 = Lose
M = Move
2 = Win
We only need 3 blocks to define a
game
3 = Win
4 = Lose
5 = Win
6 = Win
7 = Lose
Do Move M on Position P
a new Position
Generate Moves from Position P
list of Moves
8 = Win
Primitive Value of Position P
9 = Win
{win, lose, tie, undecided}
10 = Lose
Let’s write Value of Position P
Garcia, Fall 2010
UC Berkeley CS10 “The Beauty and Joy of Computing” : Tree Recursion (4)
Answer
Garcia, Fall 2010
UC Berkeley CS10 “The Beauty and Joy of Computing” : Tree Recursion (5)
© Copyright 2026 Paperzz