Overview
This week we begin our study of the tree ADT.
Tuesday, March 25th and Thursday, March 27th
Classwork
We will begin class today by having groups share their solutions to the
RGThing Priority Queues
project assigned
last class.
We will then introduce a new ADT, the binary tree, which we will be studying for the next several weeks. We'll begin with a look at how we could implement the binary tree ADT in C++ using Chapter 20: Trees from our textbook.
Now that we will be studying more abstract data structures and algorithms, our purpose will be better served by using a higher level language. Last year I switched to Python at this point, but this year I am hoping you will all agree to go on a new adventure, and use Ruby this year.
The quickest way for us to dive into Ruby would be to use this Ruby Cheatsheet along with The Odin Project curriculum to get a crash course in Ruby, and then write something we have already written in C++. That will minimize the cognitive load by using a new language on a familiar programming problem.
Looking back over what we have done this year, one project stands out for
this purpose, the Card
objects we looked at in chapters
12,
13,
14, and
15 of our
text.
We will be pairing up for this project, and I want most of you to be able to choose your partners (the exception being the students who will be paired with students in Liberia).
Learning Groups
- Turner and Parker
- Akshay, Marin, Trostin and Anar
- Anfal, Adonis, Isaac and Jeff
- Jametheil, Cody and Caleb
- Luis and Mulbah
- Ved and Thomas
- Johan and Gabriel
Homework
Use the two resources provided above to give yourself a crash course in Ruby.
The, working with your partner, begin to implement a Card
class in
Ruby.