Overview
This week we will begin studying a new data structure, the graph.
Wednesday and Thursday, March 18th and 19th
Classwork / Homework / Evaluation
We'll begin class with the promised quiz on maxheaps.
After the quiz, we will resume where we left off studying graphs. Last class we began learning the rich vocabulary associated with these mathematical objects. Today we will begin looking at how they can be represented in a computer.
Let's create groups of 3 or 4 people to complete this next project.
Groups in 3B are: Conrad and Toby (using Rust); Dylan, Gabriel and Donovan; Noah, Alessandra and Jake; and Blu and Anupama.
Groups in 1A are: Abi, Rockwell, Nikita and Sean; Brendan, Gabe, Eleanor and Alex (using C++).
After we form groups, members in each group should:
- Read from Section 13.4: Bi-connected Components on page 387 through the end of Section 13.5: Representation of Graphs on page 391. You will need to read this material more than once, until you can convince yourself you understand it.
- Convert the program on pages 392 and 393 into Python.
You will present your work in class at the beginning of next week (Monday and Tuesday). In addition to the Pair / Group Presentation Rubric we usually use, the following rubric items will be used to assess your Python code:
| Grade | Description |
|---|---|
| A |
Your code is
Extra shout out if you can get it to produce a visualization for you, using something like Mermaid. |
| B |
Evidence of effort and creativity is good, but does not reach |
| C |
Your program works, but it looks like Claude did it. |
| D | You pulled yourselves away from your senior social chatting long enough to try something, but you couldn't even get Claude to make your program work for you. |
| E | No evidence of work presented. |
Your groups will present your work to your classmates on Thursday and Friday of next week. There will be no homework during Spring break!
Monday and Tuesday, March 16th and 17th
Classwork
We will begin class by having you present your running heap programs that you were assigned last week.
After that you will have time to begin reading Chapter 13: Graphs in our text.
Homework / Evaluation
Read from Section 13.1: Introduction on page 383 through the end of Section 13.3: Directed Graphs on page 387. These sections present a large number of new concepts and associated terminology, so the best way to become familar with them will be to take notes in a markdown file in your git repos.
Create a markdown file named GraphNotes.md in your git repo and
define and illustrate the graph vocabular introduced in the assigned reading
sections.