Abstract
ABSTRACTWe consider the challenge of implementing the link‐cut tree data structure. This data structure is well known and has had a wide impact on several theoretical results. However, there is a gap in mixed practical applications. We have recently used this data structure to generate uniform spanning trees and to compute a feedback vertex set. In this kind of application, the theoretical performance of the data structure is relevant but only when verified in practice. We thus present two implementations. One implementation is based on pointers and obtains good experimental performance for small problems. The other implementation is based on splay trees and provides amortized worst‐case guarantees. We use a simple API that allows us to explain the expected functionality. Moreover, it is designed to extract full functionality from the data structure while at the same time being as simple and compact as possible, in particular, it provides support for the cycle processing required by our applications. We give an experimental evaluation of both implementations. For completeness, we also review the theoretical analysis of this structure and obtain entropy and static finger bounds.
Published Version (
Free)
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have