Práctico Semana 13 - Ej.3

Práctico Semana 13 - Ej.3

de Esteban Normey Rieta -
Número de respuestas: 1

Buenas de nuevo!
Quería saber si el argumento que se me ocurrió para poder acotar el tiempo inferiormente es válido, pues al principio sólo se me ocurrían justificaciones utilizando "Divide y Vencerás" o "Búsqueda Binaria" y creo que no era a lo que se apuntaba.
Mi argumento fue el siguiente:
i) Dado un x\in\chi, al elegir la posición de A en la que estaría la primer ocurrencia de x y decidir si x está o no (si x\in A o x\notin A), ya quedaría determinado un orden de A según un x dado.
 Entonces, por cada arreglo A de tamaño n, tenemos n posibles lugares para la primer ocurrencia de x, y 2 posibilidades (x está o no).
 Por lo tanto, hay 2*n posibles órdenes de un arreglo A, según un x dado.
ii) Como por cada comparacion que hace B, tiene 2 posibilidades, B a lo sumo distingue entre 2^{C(n)} ordenes.

Como tiene que identificar uno de los posibles órdenes según x \implies 2^{C(n)}\ge 2*n \iff C(n)\ge \log(n)+1.



En respuesta a Esteban Normey Rieta

Re: Práctico Semana 13 - Ej.3

de Guillermo Dufort -
Hola Esteban,

Tu razonamiento tiene aciertos, pero creo que hay algunas cosas que se están mezclando con la demostración de la cota inferior para los algoritmos de ordenamiento.

En principio, no entiendo qué querés decir con "..., ya quedaría determinado un orden de A según un x dado.".
El algoritmo de búsqueda binaria tiene que ser capaz de distinguir a partir de C(n) comparaciones, n posibles posiciones del arreglo. Con esa información, y con la hipótesis del tamaño del alfabeto (tener en cuenta que con tamaño de alfabeto menor o igual a 2, no se cumple), deberías poder hacer la demostración, sin pasar por el concepto de "orden".

Cualquier duda volvé a consultar.

Saludos,
Guillermo