Lecture Note
University
University of California San DiegoCourse
CSE 100R | Advanced Data StructuresPages
2
Academic year
3
anon
Views
7
Implementing Search Tree Operations with Splay Trees Splay trees are a sort of self-adjusting binary search tree in computer science. They are intended to improve search and other operations by bringingfrequently accessed parts closer to the tree's trunk. This article will describe theamortized analysis of splay trees as well as how to perform simple search treeoperations using splay trees. Knowledge of Splay Operations In order to bring a questioned node to the tree's root, a splay operation rearranges the tree. Due to the proximity of frequently accessible items to theroot, this design reduces search time. Splay trees, however, do not always implythat the tree is balanced, and unstable trees might cause sluggish splayoperations. Analyzing the amortized cost of splay operations or the average case time across a series of operations is the answer to this problem. According to the"great theorem" of splay tree analysis, the amortized cost of conducting O(D)work first and then splaying a node of depth D is equal to O(log(n)), where n isthe total number of nodes in the tree. This statement is true because, if a deepnode is located with a lot of effort, the splay operation will compensate for thenode's discovery by effectively rebalancing the tree. Splay Tree Operations implementation The find operation is one of the most basic splay tree processes. The node is initially located in the same manner as a standard binary search tree, and thenit is spread out to the tree's root and returned. The study of this operation revealsthat the amortized cost is still O(log(n)) even if the node is at a deep depth D. Insertion is another frequent operation in splay trees. To add a node, locate the spot in the tree where it should go before adding it like you would in atypical binary search tree. Splay the new node to the root after the insertion. In asplay tree, the amortized cost of insertion is also O(log(n)). In a splay tree, the delete operation is also simple. In a binary search tree, locate the node that has to be eliminated first, just like you would in a standardbinary search tree, and then delete it. The parent node of the deleted node
should be splayed to the root after deletion. In a splay tree, the amortized cost ofdeletion is O(log(n)). Conclusion A sort of self-adjusting binary search tree called a splay tree increases the effectiveness of search and other activities. Splay trees make it simple toimplement fundamental search tree operations, and the amortized cost of theseoperations is always O(log(n)). Splay trees can be used to make sure thatelements that are frequently visited are brought closer to the root, which reducessearch times.
Harnessing the Power of Splay Trees
Please or to post comments