---- v41_tree_intro.mkv The main point: Finding items by key is quick If your keys were integers starting at 0, an array would be better What if we want to search a set of strings, like the spell check example? Trees and balance: Unbalanced leads to bad performance A tree ADT: We'll go ahead and use templates Two main styles: set: Stores items These could be a complex type map: Stores key/value pairs Makes syntax simpler when accessing items ---- v42_tree_insert.mkv Basic unbalanced tree set starting point insert function checking the tree with the debugger ---- v43_tree_traversal.mkv Traversal types; preorder We can see the tree structure with this one inorder Prints out the data in order postorder We need this type for deallocation Deallocating the tree ---- v44_delete_node.mkv contains and delete_node methods ---- v45_graphviz.mkv I'll set this up so you can use it or not We'll use graphviz, so we can output the structure of the tree Note: graphviz internally causes a problem with valgrind I don't know why icat, only works with kitty public_html if you're using SSH with isoptera from Windows