Relaxované vyvažování binárních vyhledávacích stromů
Relaxed rebalancing of binary search trees
diplomová práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/8146Identifikátory
SIS: 40272
Kolekce
- Kvalifikační práce [11239]
Autor
Vedoucí práce
Oponent práce
Koubek, Václav
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Softwarové systémy
Katedra / ústav / klinika
Katedra softwarového inženýrství
Datum obhajoby
5. 2. 2007
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Čeština
Známka
Velmi dobře
Na rozdíl od klasických vyvážených binárních vyhledávacích stromů, kdy proces vyvažování následuje bezprostředně po každém vložení nebo ubrání prvku, relaxované vyvažování umožňuje oddělit tyto fáze a provést vyvažování odděleně. Má význam například při paralelním přístupu k datům, kdy je možné vyvažování odložit na dobu, kdy je systém málo zatížen požadavky uživatelů. Další výraznou výhodou popsaných typů relaxovaného vyvažování je to, že pri paralelním přístupu k datům potřebují držet pouze konstatní počet zámku při modifikujících operacích a umožnují tak více modifikujících operací současně ve stromu. Cílem této práce je experimentálne porovnat klasickou a relaxovanou variantu AVL stromu v několika různých scénárích v paralelním prostředí podle počtu porovnání, počtu a typu rotací a podle spotřebovaného času.
In standard binary trees the rebalancing is carried out in connection with and immediately folowing the updates. Relaxed balancing allows to separate updates and rebalancing. First advantage of this approach is to keep the tree partially unbalanced and leave rebalancing to the different time when system is idle. Other great benefit of presented relaxed balancing algorithms in concurrent enviroment is necessity of keeping only small constant number of locks for modifying operations and thus allowing more modifying operations in the tree at the same time. The aim of this thesis is to empirically compare standard and relaxed variant of AVL tree in several different scenarios in concurrent enviroment according to number of data compares, number and type of rotations and according to the time requirements.