Week 65: CST370 - Design and Analysis of Algorithms
WK06: Weekly Reflection This week's module focused on AVL trees, 2-3 trees, heaps and Heapsort, and hashing. These topics helped me understand how different data structures maintain organization and efficiency when storing, searching, inserting, and removing data. I also learned how balancing, restructuring, and choosing an appropriate storage method can improve the performance of algorithms. One topic that stood out to me was the AVL tree. I learned that an AVL tree is a self-balancing binary search tree in which the heights of the left and right subtrees must remain balanced. The balance factor of each node is calculated by comparing the heights of its subtrees. When the balance factor becomes too large or too small, rotations are used to restore the tree’s balance. The exercises helped me practice identifying whether a binary search tree was also an AVL tree. The AVL tree operations were especially useful because they showed how rotations maintain efficient performance. I learn...