Maintaining the cycle structure of dynamic permutations

06/07/2023
by   Zsuzsanna Lipták, et al.
0

We present a new data structure for maintaining dynamic permutations, which we call a forest of splay trees (FST). The FST allows one to efficiently maintain the cycle structure of a permutation π when the allowed updates are transpositions. The structure stores one conceptual splay tree for each cycle of π, using the position within the cycle as the key. Updating π to τ·π, for a transposition τ, takes 𝒪(log n) amortized time, where n is the size of π. The FST computes any π(i), π^-1(i), π^k(i) and π^-k(i), in 𝒪(log n) amortized time. Further, it supports cycle-specific queries such as determining whether two elements belong to the same cycle, flip a segment of a cycle, and others, again within 𝒪(log n) amortized time.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset
Success!
Error Icon An error occurred

Sign in with Google

×

Use your Google Account to sign in to DeepAI

×

Consider DeepAI Pro