1) Wat is het verschil tussen AVL bomen en splayboom?
Ze zijn vergelijkbaar in structuur en de operaties die we een beroep op hen. Het verschil is dat in splayboom, na elke operatie, proberen we de boom bijna perfect uitgebalanceerd zodat toekomstige operaties minder tijd te houden.
2) Op welke basis kunnen we deze bomen te selecteren?
Splayboom zijn altijd beter dan binaire zoekboom wanneer uw toepassing deals met veel data in de boom, maar zal de toegang tot een subset van de gegevens heel vaak nodig hebben dan andere. In dit geval worden de gegevens die u regelmatig gebruikt zal komen in de buurt van de wortel als gevolg van de splay. Ook kan elk knooppunt is, worden benaderd met minder dan voorheen.
Als algemene regel voor het selecteren van deze bomen, als je "Gemiddeld" log (n) tijd nodig over een periode van boom operaties gebruik dan splayboom. Binaire boom kan niet garanderen.
3) Wat zijn de positieve en negatieve's van deze bomen?
Positief voor beide is dat je rond log (n) in beide datastructuren theoretisch.
Zoals vermeld splayboom hebben gemiddeld log (n) over een aantal bewerkingen. Dit betekent dat, misschien heb je n tijd complexiteit voor een operatie tenminste een keer in die set. Maar dit zal worden gecompenseerd bij het openen van de frequente items.
Het negatieve van de binaire zoekboom is dat je nodig hebt geluk te log (n) altijd zo te zijn. Als de toetsen zijn niet willekeurig, dan is de boom zal reduceren tot een lijst achtige vorm met slechts één kant.
4) Wat zijn de prestaties van deze bomen op het gebied van grote O notatie?
Splayboom Log (n) en het gemiddelde voor een groep van boom operaties. Binaire boom Log (n) alleen als uw sleutels gaan in willekeurige.
De resultaten op de runtime zijn hier duidelijk splayboom runtime profileren
U kunt de runtime verschil te zien in het zoeken met en zonder splaying.