Week 6 Trees, Heap, and Hashing
This week in Design and Analysis of Algorithms, we took a look at two types of balanced binary search trees and their corresponding algorithms such as the AVL Tree and the 2-3 Tree. We learned to figure out what qualifies as an AVL Tree or 2-3 Tree and how to maintain its qualifications after doing operations on it such as insertion. Additionally we explored how to build a heap given a list of inputs, and how to keep the heap maintained after inserting or removing elements. Lastly we learned about the hashing method using hash-tables for storing values in order to produce fast data look up. When we took a look at the AVL tree we analyzed what qualifications it needs to be labeled as an AVL tree. Briefly explained in the lecture videos, a tree is an AVL if it is a binary search tree that maintains a strict balance condition. There needs to be a balance between the left and right subtrees and we can do this by finding the balance factor, accordingly in the lecture it is described as the ...