Hola,tengo dos dudas importantes:
1)
Al rato que salí del parcial,me di cuenta de que en la parte b del EJERCICIO 2,en el Promover,al tener un cabezal no trate el caso en que el elemento a promover fuera alguno de los de mi cabezal,primero o último digamos.
Seguramente eso me quite todos los puntos de la implementación de PROMOVER,pero,me quita los puntos de las demas implementaciones de la parte b?
Porque lo otro lo hice y creo esta bien :S.
2)
Mi definición del tipo en modula 2,de la parte (a),era un cabezal a modo de dos colas,una de normales y otra de urgentes.
Pero ademas le puse doble enlace,porque me quedaba mas comodo al momento de promover,y seguia siendo los procedimientos pedidos por la letra en O(1).
Comentarios decian que no era necesario el doble enlace,pero a mi me resulto útil y repito,lo que se pedia me resulto de O(1).
Esta mal el ejercicio por poner doble enlace?
Gracias y agradesco si algun profesor del INCO me puede contestar.
En respuesta a Usuario eliminado
Re: Segundo parcial,algunas dudas ejercicio2
Pero no creo que te vayan a poner todo mal, este es uno de los errores que se pueden tener en este tipo de ejercicios, pero no quiere decir que no te valoren todo lo demas que hiciste, que al parecer si mi criterio es correcto, estaría bien.
Yo no me avive de usar una lista doblemente encadenada, lo cual ahora que lo pienso era mejor, igualmente recorria para eliminar el de la lista de normales desde el elemento anterior al que tendría que eliminar y tenía que analizar el primer elemento por separado.
Me fui de tema al final pero en si me parece que no da para que te hagas tanta cabeza, ojala los profesores piensen lo mismo que yo.
Saludos
En respuesta a Usuario eliminado
Re: Segundo parcial,algunas dudas ejercicio2
de Lorena Etcheverry -
Hola Maximiliano:
lo que dice Matias es correcto.
En la parte b, en la implementación, lo importante es que la estructura de datos que definiste garantice O(1) para las operaciones que lo requerían y que las implementaciones la utilicen adecuadamente. Además de eso, evaluaremos cada una de las operaciones que te pedimos y cada una se corrige por separado. Si tenés mal algún caso de borde en Promover no vas a tener todos los puntos que se le asignen a Promover, pero no vale todos los puntos de la parte b.
Por otro lado, si tu implementación del TAD garantiza el orden de ejecución mencionado en peor caso, se considerará como una implementación válida (puede ser simple, o doblemente encadenada)
slds
Lorena
lo que dice Matias es correcto.
En la parte b, en la implementación, lo importante es que la estructura de datos que definiste garantice O(1) para las operaciones que lo requerían y que las implementaciones la utilicen adecuadamente. Además de eso, evaluaremos cada una de las operaciones que te pedimos y cada una se corrige por separado. Si tenés mal algún caso de borde en Promover no vas a tener todos los puntos que se le asignen a Promover, pero no vale todos los puntos de la parte b.
Por otro lado, si tu implementación del TAD garantiza el orden de ejecución mencionado en peor caso, se considerará como una implementación válida (puede ser simple, o doblemente encadenada)
slds
Lorena
En respuesta a Lorena Etcheverry
Re: Segundo parcial,algunas dudas ejercicio2
de Usuario eliminado -
Gracias Lorena,Matias, por su tiempo y preocupación.
Saludos :)
Saludos :)
En respuesta a Lorena Etcheverry
Re: Segundo parcial,algunas dudas ejercicio2
Hola, una consulta...
en la parte c) de este ejercicio.... que pedia el orden de ejecucion en el peor caso para PromoverAvion, era O(n+1) , no? , siendo n la cantidad de aviones 'normales' y la constante 1 (uno), el tiempo de ejecucion para insertar el avion en 'urgentes'; ¿Era así?
O simplemente era O( n) ?
Desde ya muchas gracias!!
Saludos!
En respuesta a Maria Elena Olivera Machado
Re: Segundo parcial,algunas dudas ejercicio2
de Alexis Alfonso -
Te quedás con el orden del monomio de mayor orden. O(n + 1) = O( n )
Exacto, yo lo puse como O(n ) + O(1) = O(n )
En respuesta a Alexis Alfonso
Re: Segundo parcial,algunas dudas ejercicio2
Es verdad, no me acordaba...
Bueno, gracias por aclararmelo y suerte en los resultados!!
Saludos!!
En respuesta a Usuario eliminado
Re: Segundo parcial,algunas dudas ejercicio2
de Usuario eliminado -
Yo hice 2 colas doblemente encadenadas igual que vos
Creo que tengo el mismo problema que vos, cuando entregué el parcial y bajé los 3 escalones de la salida sentí un murmuro al oído que me decía "casos bordes! casos bordes!". Lo que claro, a diferencia de vos yo utilicé celda dummy entonces mi problema era al quitar el elemento de una cola si éste fuese el último. Con el caso del primer elemento no tuve problema. Creo, todavía no me puse a digerir.
No creo que esta clase de problema sea algo super grave, ya que compilar en papel no es tan fácil. El concepto es lo que hay que tener bien.
Creo que tengo el mismo problema que vos, cuando entregué el parcial y bajé los 3 escalones de la salida sentí un murmuro al oído que me decía "casos bordes! casos bordes!". Lo que claro, a diferencia de vos yo utilicé celda dummy entonces mi problema era al quitar el elemento de una cola si éste fuese el último. Con el caso del primer elemento no tuve problema. Creo, todavía no me puse a digerir.
No creo que esta clase de problema sea algo super grave, ya que compilar en papel no es tan fácil. El concepto es lo que hay que tener bien.
No me extrañaría que tengan algún sistema capaz de compilar el papel
En respuesta a Usuario eliminado
Re: Segundo parcial,algunas dudas ejercicio2
Pero la ....! Ahora lo decís y me acabo de dar cuenta que tuve un error estúpido en ese!
Yo use en el cabezal un puntero al ultimo elemento para que la inserción fuera O(1), pero en promover no actualicé el ultimo...lo peor es que lo tenía presente en la cabeza pero no lo escribí XD. Igual creo que todo lo demás lo tengo bien, mi implementación garantiza O(1) de tiempo de ejecución en el peor caso para los procedimientos pedidos, así que ta, 60 no me saco ni a palos por ese error.
Y la parte c) era O(n ), y recién hace un rato me di cuenta que añadí algo que en realidad no es del todo correcto, ya que puse que igualmente el tiempo de ejecución dependería del algoritmo de búsqueda que utilice,teniendo en mi cabeza una búsqueda dicotómica, pero ahora me acuerdo que la lista no estaba ordenada, por lo que el tiempo de ejecución de la mayoría de los algoritmos de búsqueda que se puedan implementar son al menos O(n ), por lo que he leído hasta ahora.
Yo use en el cabezal un puntero al ultimo elemento para que la inserción fuera O(1), pero en promover no actualicé el ultimo...lo peor es que lo tenía presente en la cabeza pero no lo escribí XD. Igual creo que todo lo demás lo tengo bien, mi implementación garantiza O(1) de tiempo de ejecución en el peor caso para los procedimientos pedidos, así que ta, 60 no me saco ni a palos por ese error.
Y la parte c) era O(n ), y recién hace un rato me di cuenta que añadí algo que en realidad no es del todo correcto, ya que puse que igualmente el tiempo de ejecución dependería del algoritmo de búsqueda que utilice,teniendo en mi cabeza una búsqueda dicotómica, pero ahora me acuerdo que la lista no estaba ordenada, por lo que el tiempo de ejecución de la mayoría de los algoritmos de búsqueda que se puedan implementar son al menos O(n ), por lo que he leído hasta ahora.
En respuesta a Marco Centurion Virdo
Re: Segundo parcial,algunas dudas ejercicio2
de Usuario eliminado -
Si utilizaste colas doblemente encadenadas, solo hay que actualizar el último si este es el promovido, ese fue el caso borde que me comí. Pero si la lógica de tu algoritmo es válida, entonces nos sacarían algunos puntos por el error pero lejos de tener mal el ejercicio por completo.
Algo poco visto pero que pudo haber ayudado hubiese sido utilizar doble celda dummy, una en el último y otra en el primero, de cada cola, para evitar el caso borde de último elemento en promover. Lo que si habría que hacer algo para marcar cuando la cola es vacía y otros detalles de esta idea, pero debería andar lujo.
Algo poco visto pero que pudo haber ayudado hubiese sido utilizar doble celda dummy, una en el último y otra en el primero, de cada cola, para evitar el caso borde de último elemento en promover. Lo que si habría que hacer algo para marcar cuando la cola es vacía y otros detalles de esta idea, pero debería andar lujo.
En respuesta a Usuario eliminado
Re: Segundo parcial,algunas dudas ejercicio2
Cuántos puntos valía el de especificar?