Creo que aquí hay una prueba diferente, que demuestra la imposibilidad de una estructura de tiempo de consulta , con preprocesamiento O ( n ) .O ( logkn )O ( n )
Suponga que en el preprocesamiento realiza comparaciones , lo que lleva a un orden parcial.O ( n )
Ahora considere el tamaño del antichain más grande en eso. Dado que estos elementos no son comparables, para que tengamos un algoritmo de consulta O ( log k n ) , debemos tener que A = O ( log k n ) .UNAO ( logkn )A = O ( logkn )
Ahora, según el teorema de Dilworth, hay una partición de tamaño , en cadenas.UNA
Ahora podemos complementar el algoritmo para determinar las cadenas en la partición. Podemos determinar si dos elementos son comparables creando un gráfico dirigido de comparaciones y haciendo un análisis de accesibilidad. Esto se puede hacer sin comparaciones adicionales. Ahora solo fuerza bruta cada posible partición de tamaño para determinar si es una partición de cadenas.UNA
Una vez que tenemos las cadenas, podemos fusionarlas para obtener un algoritmo de comparación para ordenar la lista completa.O ( n logIniciar sesiónn )