Ejercicio 2- práctico 10

Ejercicio 2- práctico 10

de Ines Beatriz Lorenzo Soumastre -
Número de respuestas: 1

Buenas tardes,

Tengo una consulta sobre este ejercicio. Yo lo implementé con un arreglo de posiciones donde cada posición tiene asociado una lista doble enlazada y un árbol binario de búsqueda ordenado según el código del atleta, ambas estructuras comparten nodo. Haciendo esta implementación tengo problemas con la parte que pide lo siguiente:

'Obtener la lista de competidores que alguna vez estuvieron en el puesto k'.

Porque según la letra: "si un atleta participó más de una vez, aparece con la mejor posición que obtuvo", es decir, si tengo un atleta que estuvo en el puesto 1 y para otro año quedó en el puesto 2, solo guardo cuando quedó en el puesto 1 (o modifico el nodo de forma de guardar la información del puesto 1). Esto es consistente con la estructura ABB ordenada según atleta, pero no podría cumplir con la especificación de obtener la lista en el puesto número 2, ya que el nodo ya fue borrado, solo guardo en la estructura la información del atleta con mejores resultados.

No sé si se entendió la consulta.

Yo con mi implementación podría responder:

''Obtener la lista de competidores que obtuvieron como máximo nivel el puesto k', algo así.

Hay algo que estoy haciendo mal?

Saludos!

En respuesta a Ines Beatriz Lorenzo Soumastre

Re: Ejercicio 2- práctico 10

de Matias Richart -
Buenas.

Tenés razón que tu implementación (así como la que se discute en el video de teórico) no permitiría cumplir con esa condición así como la estas entendiendo.

Igualmente, el objetivo de la letra va mas por el lado de "que alguna vez estuvieron en el puesto k, como su mejor puesto". Por lo que tu solución es correcta. Vamos a mejorar la letra!

Por otro lado, si quisiéramos mantener un histórico de todos los puestos y no tener información repetida habría que pensar en otra estructura un poco mas compleja. Una opción podría ser, para cada posición, tener una lista de punteros a nodos (y no una lista de nodos) donde cada elemento apunta a un nodo que alguna vez estuvo en esa posición. Además, habría que pensar con cuidado las inserciones, borrados y actualizaciones.

Saludos