Thinking’Algorithmically’ - Columbia University

30
Thinking Algorithmically David K. Elson CS4HS @ Columbia July 7, 2011

Transcript of Thinking’Algorithmically’ - Columbia University

Page 1: Thinking’Algorithmically’ - Columbia University

Thinking  Algorithmically  David  K.  Elson  

CS4HS  @  Columbia    July  7,  2011  

Page 2: Thinking’Algorithmically’ - Columbia University

2  

Page 3: Thinking’Algorithmically’ - Columbia University

3  

Page 4: Thinking’Algorithmically’ - Columbia University

4  

Page 5: Thinking’Algorithmically’ - Columbia University

5  

Page 6: Thinking’Algorithmically’ - Columbia University

6  

Page 7: Thinking’Algorithmically’ - Columbia University

7  

Page 8: Thinking’Algorithmically’ - Columbia University

8  

Page 9: Thinking’Algorithmically’ - Columbia University

9  

Page 10: Thinking’Algorithmically’ - Columbia University

10  

Page 11: Thinking’Algorithmically’ - Columbia University

11  

Page 12: Thinking’Algorithmically’ - Columbia University

12  

Page 13: Thinking’Algorithmically’ - Columbia University

13  

Page 14: Thinking’Algorithmically’ - Columbia University

14  

 LEFT  HAND    RIGHT  HAND    ONE  HAND  

Pick_up(PB_KINFE)  

Spread_PB(slice1)  

   ….  

Drop()  

Pick_up(JELLY_KNIFE)  

Spread_Jelly(slice2)  

   ….  

Drop()  

Pick_up(slice1)  

Assemble(slice1,  slice2)  

Page 15: Thinking’Algorithmically’ - Columbia University

15  

 LEFT  HAND    RIGHT  HAND  

Pick_up(PB_KNIFE)   Pick_up(JELLY_KN)  

Spread_PB(slice1)   Spread_Jelly(slice3)  

     …          ….  

Spread_PB(slice4)   Spread_Jelly(slice2)  

   …        ….  

Drop()   Drop()  

Pick_up(slice1)   Pick_up(slice3)  

Assemble(slice1,  slice2)   Assemble(slice3,  slice4)  

 ONE  HAND  

Pick_up(PB_KINFE)  

Spread_PB(slice1)  

   ….  

Drop()  

Pick_up(JELLY_KNIFE)  

Spread_Jelly(slice2)  

   ….  

Drop()  

Pick_up(slice1)  

Assemble(slice1,  slice2)  

Page 16: Thinking’Algorithmically’ - Columbia University

16  

LEFT  HAND   MIDDLE  HAND   RIGHT  HAND  

Page 17: Thinking’Algorithmically’ - Columbia University

17  

LEFT  HAND   MIDDLE  HAND   RIGHT  HAND  

Pick_up(PB_KNIFE)   Pick_up(JELLY_KNIFE)  

Spread_PB(slice1)   Spread_Jelly(slice2)  

     …          ….  

Pick_up(slice1)   Spread_PB(slice3)   Spread_Jelly(slice4)  

Assemble(slice1,  slice2)      …        ….  

Pick_up(slice3)   Spread_PB(slice5)   Spread_Jelly(slice6)  

Assemble(slice3,  slice4)    …    …  

Pick_up(slice5)   Spread_PB(slice7)   Spead_Jelly(slice8)  

Assemble(slice5,  slice6)    …    …  

Pick_up(slice7)  

Assemble(slice7,  slice8)  

FAST….  

Page 18: Thinking’Algorithmically’ - Columbia University

18  

LEFT  HAND   MIDDLE  HAND   RIGHT  HAND  

Pick_up(PB_KNIFE)   Pick_up(PB_KNIFE)   Pick_up(JELLY_KNIFE)  

Spread_PB(slice7)   Spread_PB(slice1)   Spread_Jelly(slice2)  

…        …          ….  

Drop()   Spread_PB(slice3)   Spread_Jelly(slice4)  

Pick_up(slice1)      …        ….  

Assemble(slice1,  slice2)   Spread_PB(slice5)   Spread_Jelly(slice6)  

Pick_up(slice3)    …    …  

Assemble(slice3,  slice4)   Drop()   Spead_Jelly(slice8)  

Pick_up(slice5)   Pick_up(slice7)    …  

Assemble(slice5,  slice6)   Assemble(slice7,  slice8)   drop(JELLY_KNIFE)  

FASTER!  

Page 19: Thinking’Algorithmically’ - Columbia University

19  

Page 20: Thinking’Algorithmically’ - Columbia University

20  

Page 21: Thinking’Algorithmically’ - Columbia University

21  

Page 22: Thinking’Algorithmically’ - Columbia University

22  

Page 23: Thinking’Algorithmically’ - Columbia University

23  

Page 24: Thinking’Algorithmically’ - Columbia University

24  

Page 25: Thinking’Algorithmically’ - Columbia University

25  

Page 26: Thinking’Algorithmically’ - Columbia University

26  

Page 27: Thinking’Algorithmically’ - Columbia University

27  

Page 28: Thinking’Algorithmically’ - Columbia University

28  

Page 29: Thinking’Algorithmically’ - Columbia University

29  

Page 30: Thinking’Algorithmically’ - Columbia University

30