search trees searchingwhich has been discussed throughout the textis very common operation and has been studied extensively linear search of an array or python list is very slowbut that can be improved with binary search even with the improved search timearrays and python lists have disadvantage when it comes to the insertion and deletion of search keys remembera binary search can only be performed on sorted sequence when keys are added to or removed from an array or python listthe order must be maintained this can be time consuming since keys have to be shifted to make room when adding new key or to close the gap when deleting an existing key the use of linked list provides faster insertions and deletions without having to shift the existing keys unfortunatelythe only type of search that can be performed on linked list is linear searcheven if the list is sorted in this we explore some of the many ways the tree structure can be used in performing efficient searches the tree structurewhich was introduced in the last can be used to organize dynamic data in hierarchical fashion trees come in various shapes and sizes depending on their application and the relationship between the nodes when used for searchingeach node contains search key as part of its data entry (sometimes called the payload and the nodes are organized based on the relationship between the keys there are many different types of search treessome of which are simply variations of othersand some that can be used to search data stored externally but the primary goal of all search trees is to provide an efficient search operation for quickly locating specific item contained in the tree search trees can be used to implement many different types of containerssome of which may only need to store the search keys within each node of the tree more commonlyhoweverapplications associate data or payload with each search key and use the structure in the same fashion as map adt would be used the map adt was introduced in at which time we implemented it using list structure exercises in several offered the opportunity to provide new implementations using various data structures in