Reminder that you must complete the pre-reading before each class.
On this page:
✔️ Pre-reading for Tuesday 6/29
✔️ Pre-reading for Wednesday 6/30
✔️ Pre-reading for Thursday 7/1
Pre-Reading for Recursion Crash Course, Tuesday
Essential Questions
Before attending class, please complete the material below and use the following questions to guide your note-taking:
✔️ What is recursion and how does it work?
✔️ When and why should/would one use recursion over iteration?
Read/Watch/Review
- Read How Recursion Works — Explained with Flowcharts and a Video
- Watch What on Earth is Recursion? - Computerphile (9 min)
- Read Reading 10: Recursion
- Watch What is recursion? Programming Tutorial (15 min)
Pre-Reading for Mergesort, Wednesday
Essential Questions
Before attending class, please complete the material below and use the following questions to guide your note-taking:
✔️ How does the mergesort algorithm work?
✔️ What’s the time complexity of mergesort algorithm?
Read/Watch/Review
Before attending class, please complete the material below:
- Read Merge Sort Algorithm
- Watch Merge Sort, GeeksforGeeks (2 min)
- Watch Algorithms: Merge Sort (10 min)
- Note that the implementation is in Java but the only differences for C++ would be using a pointer to an int array since we can’t pass arrays in C++, and manually copying the array.
- Read Analysis of Merge Sort
- Watch Why Is Merge Sort O(n * log(n))? (37 min)
Pre-Reading for Quicksort, Thursday
Essential Questions
Before attending class, please complete the material below and use the following questions to guide your note-taking:
✔️ How does the quicksort algorithm work?
✔️ What’s the time complexity of quicksort algorithm?
Read/Watch/Review
Before attending class, please complete the material below:
- Read Quick Sort Algorithm
- Watch Quick Sort, GeeksforGeeks (3 min)
- Watch Algorithms: Quick Sort (9 min)
- Note that the implementation is in Java but the implementation in C++ would be very similar.
- Read Analysis of Quick Sort
- Watch The Quicksort Sorting Algorithm: Pick A Pivot, Partition, & Recurse (26 min)
- Time complexity explanation starts @ 15 min mark