Overview
This week we begin our study of search algorithms, to be followed immediately thereafter by the closely related topic of sorting algorithms. Searching is all about finding whether or not given values are in a data store, and sorting is about arranging data to make searching, as well as maintaining the sorted data, efficient.
Wednesday, Thursday, Friday and Tuesday, April 8th, 9th, 10th and 14th
Classwork / Homework / Evaluation
We'll begin class with the promised short quiz on searching algorithms. This will be your last evaluated item for quarter 3.
After that, I'll do a demo of the BDS C development workflow tools that Liam has been working on, which we will use for our next project.
We will then have a brief discussion of sorting algorithms and pair up to select from the following algorithms for implementation and presentation.
| Sorting Algorithms | |||
|---|---|---|---|
| Sort | Presenters | Sort | Presenters |
| Bubble Sort | Abi (1A) / Noah (3B) | Merge Sort | Alex (1A) / Conrad (3B) |
| Insertion Sort | Rockwell (1A) / Gabe (3B) | Quick Sort | Gabriel (1A) / Toby (3B) |
| Selection Sort | Eleanor (1A) / Anupama (3B) | Radix Sort | Nikita (1A) / Donovan (3B) |
| Heap Sort | Sean (1A) / Blu (3B) | Shell Sort | Jake (3B) |
| Tree Sort | Dylan and Alessandra (3B) | ||
Here is a rubric we can use to evaluate this project:
| Grade | Description |
|---|---|
| A |
You implement your selected algorithm as presented in our text, but with the following changes:
Your code is clean and easy to understand, showing clear evidence that you not only got it to work, but took time to make it readable and maintainable. Your code is unit tested using BDSCTEST.H. You are able to answer detailed questions about every line of your source code! |
| B |
It mostly meets the requirements, but does not reach |
| C |
Your program works, but it fails to meet the project's educational objectives, and it seems like Grok wrote it, especially when you are unable to answer specific questions about how it works. |
| D | You pulled yourselves away from your senior social chatting long enough to try something, but you couldn't even get AI to make your program work for you. |
| E | No evidence of work presented. |
Monday and Tuesday, April 6th and 7th
Classwork
Read Sections 14.1: Introduction to Searching on page 424 through the end of Section 14.5: Jump Search on page 433 in Chapter 14: Searching and Sorting of our text. Take notes in a markdown file in your git repo on this material.
Homework / Evaluation
Prepare a one page, front and back 8 1/2 by 11 inch sheet of paper for use on a quiz on the reading material at the beginning of our next class. Your evaluation will be equally weighted between your markdown notes and your quiz score.