CST370: Design and Analysis of Algorithms, Week 5
Week 5 This week we focused on quicksort, binary tree traversals and height, decrease-and-conquer algorithms, binary search, and topological sorting. This week felt pretty straightforward overall! One thing I had to refresh myself on was preorder, inorder and postorder traversals. At first, I could NOT remember which order was which, but after working through examples from the lectures, it came back pretty quickly. Preorder: Root -> Left -> Right Inorder: Left -> Root -> Right Postorder: Left -> Right -> Root Quicksort felt familiar, especially after spending time on merge sort and divide-and-conquer in the last few weeks. The idea of breaking a problem into smaller pieces was not new at this point, so it was fairly easy to follow, implementing the pivot was new. Topological sorting was a topic that was newest for me, but even that connected to graphs and DFS, which we have already covered. Overall, this week felt a lot more manageable than some of the earl...