Link-cut tree es una estructura de datos inventada por Sleator y Tarjan, que admite varias operaciones y consultas en unbosque de nodos en el tiempo O ( log n ) . (Por ejemplo, el enlace de operacióncombina dos árboles en el bosque en uno, mientras que la operación de corte divide un árbol en el bosque en dos árboles).
Se conocen varias aplicaciones mediante el uso de árboles de corte de enlace, y aquí estoy particularmente interesado en la descomposición del separador de Goodrich , que dado un gráfico de plano de nodos G se puede obtener un árbol binario correspondiente donde los nodos son subgrafías de G y los hijos de un nodo H son los subgrafos de H divididas por el separador en H . Tal descomposición se puede construir fácilmente en el tiempo O ( n log n ) (ya que se puede encontrar un separador en el tiempo O ( n ) , y dado que el separador divide el gráfico de manera equilibrada, después de nivel de separaciones las hojas del árbol son de tamaño O ( 1 ) ). La contribución principal de Goodrich es que puede construir tal descomposición en el tiempo O ( n ) , manteniendo y reutilizando las estructuras de datos utilizadas para encontrar separadores en cada nivel.
Una de las estructuras de datos que se utilizan en la construcción es, de hecho, el árbol de enlace cortado. En la página 7 del artículo de Goodrich, afirmó que la inicialización del árbol de enlace cortado se puede hacer a tiempo . Mientras reviso todos los documentos allí citados, me parece que si construimos un árbol de corte de enlace a través del enlace de operación , lleva tiempo O ( n log n ) en total.
¿No entiendo algo? ¿Se puede realizar la inicialización de un árbol de enlace cortado en el tiempo ?