Robb Cutler, Tutor Crossing, former Assistant Head, Harker School
Have students write down their steps.
How many steps did you use?
How do we solve this in a more general case? What is the pattern?
- The pattern is hard to see, because it is recursive.
This is a "hard" problem; students need scaffolding; make it natural. A very exploratory example.
Stacking Cups
- allows us to represent data in a non-numeric way.
- use to teach sorting algorithms
- can introduce terminology such as invariants, algorithmic run time (number of steps), algorithmic analysis - what is a step? number of comparisons;
- Want to teach them the math, but not use math :)
- count - first time there are 6 comparisons (7 items); second time there are 5 comparisons ... and so on ... (black stars - below)
- this is an n^2 "thing" - if i double the number of cups (to 14), i know have double the number of comparisons
- the student can visually see the relationships in the diagram.
* * * * * *
* * * * * *
* * * * * *
* * * * * *
* * * * * *
* * * * * *
* * * * * *
Ping Pong Balls* * * * * *
* * * * * *
* * * * * *
* * * * * *
* * * * * *
* * * * * *
- number the balls
- use pvc pipe to represent the "stack" and ping pong balls as items
- use to make a stack, with two arrows (push, pop)
- push a 1 to the stack, pop a 1 from the stack
- can teach FIFO, LIFO, peak(), isempty()
- can talk about what we can do with a stack - how do I reverse the number? push numbers and pop until empty.
- must have rules; have "enqueue" and "dequeue" on each end
If they can hold it in their hands, they can learn it better.
- can also use this to represent a queue
- clear plastic tubes: can see what's inside; or using the pvc pipes it is a "black box"
- add velcro to the items (laminated pieces of paper - eg. numbers)
- data structure is recursive - "mimics itself in other places"
Use whiteboard to "code" on the board. Formulate the rules of writing an algorithm.
Allow students to generate the code or algorithm.
What other ideas - using toys to teach computing concepts?
- toy trains for linked list
- my first barrel of monkeys - linked list & pointers
- quercetti toys - binary arithmetic, good for just in the classroom
- bags of candy - separate by attribute, use to teach classes
- PB&J - logic & syntax errors
- yarn of string to teach recursion - through it across the room to students
- mancala: recursion, iteration, mathematical thinking
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.