Edición de «Final 10/03/17 (Algoritmos II)»

De Cuba-Wiki
Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.

Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces publica los cambios para así efectuar la reversión.

Revisión actual Tu texto
Línea 30: Línea 30:


=== Soluciones ===
=== Soluciones ===
a) Hacer max_heapify del arreglo, sumar los k primeros, y en base a eso decidir si ordenar o no. Esto sería <math> O(N + K * log(N)) </math> en el caso que no haya que ordenar, <math> O(N * log(N)) </math> para cuando sí haya que ordenar.  
a) Hacer max_heapify del arreglo, sumar los k primeros, y en base a eso decidir si ordenar o no. Esto sería <math> O(N) </math> en el caso que no haya que ordenar, <math> O(N * log(N)) </math> para cuando sí haya que ordenar.  


b) Usaría un Heap Sort, ya que permite ordenar el arreglo en <math>O(n*log(n))</math>, y la inserción cuesta solamente <math>O(log(n))</math>. No se me ocurre un método mejor.
b) Usaría un Heap Sort, ya que permite ordenar el arreglo en <math>O(n*log(n))</math>, y la inserción cuesta solamente <math>O(log(n))</math>. No se me ocurre un método mejor.
Ten en cuenta que todas las contribuciones a Cuba-Wiki pueden ser editadas, modificadas o eliminadas por otros colaboradores. Si no deseas que las modifiquen sin limitaciones, no las publiques aquí.
Al mismo tiempo, asumimos que eres el autor de lo que escribiste, o lo copiaste de una fuente en el dominio público o con licencia libre (véase Cuba-Wiki:Derechos de autor para más detalles). ¡No uses textos con copyright sin permiso!

Para editar esta página, responde la pregunta que aparece abajo (más información):

Cancelar Ayuda de edición (se abre en una ventana nueva)