Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Temas relacionados > Debates
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-10-2012
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Thumbs up Porque procesar un array ordenado es mas rapido que uno en desorden?

Una pregunta ligeramente interesante con una respuesta impresionante:

http://stackoverflow.com/questions/1...unsorted-array

Importante tambien notar el analisis de los ciclos....
__________________
El malabarista.
Responder Con Cita
  #2  
Antiguo 11-10-2012
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Son las 1am por aquí y ya tengo fiaquitis de leer ¡sobre todo inglés!
A vista gorda y rápida, se debe, a ese caso en particular, a que dado por la naturaleza del problema cuando los elementos son ordenados realizar tal evaluación o comparación ya no tiene demasiado sentido.
Resulta demasiado lógico, ya que en realidad si los tenemos ordenados es posible determinar el punto en el cual la evaluación para a ser verdadera y de allí en más no tiene sentido seguir evaluando y directamente aplicar una suma.

No sucede lo mismo cuando los datos están desordenados y no hay modo de determinar cuando optimizar. En este punto necesita hacer esta iteración e ir evaluando dato a dato.

Seguramente si se hiciera otro tipo de operatoria, y ni que decir más compleja que un simple if-then, sobre el array no habría de esperarse demasiada diferencia entre disponer de datos ordenados o no.
Por otro lado esto como dije depende fuertemente de la naturaleza del problema... no debiera llegarse a la conclusión de que siempre será preferible los datos ordenados. Habrá casos en los que no y otros que si.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]

Última edición por Delphius fecha: 11-10-2012 a las 06:27:26.
Responder Con Cita
  #3  
Antiguo 11-10-2012
Avatar de TOPX
TOPX TOPX is offline
Miembro
 
Registrado: may 2008
Ubicación: Bogotá
Posts: 527
Poder: 17
TOPX Va camino a la fama
Me impresionó, porque me hizo entender que:
  • Sin conocer la existencia del "Predictor de Saltos", haría falta mucha malicia para sospechar la razón de la diferencia de desempeño.
  • Conociendo la existencia del "Predictor de Saltos", hace falta mucho ingenio para determinar un buen balance entre facilidad de lectura del código contra desempeño de ejecución.
Gracias por compartirnos el tema.

-
__________________
"constructive mind, destructive thoughts"
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Ayudenme Rapido, Rapido omarys Varios 6 04-06-2011 09:45:34
adotable ordenado por un campo leorene Conexión con bases de datos 2 13-02-2007 01:00:16
DBLookupComboBox ordenado Supermagayin Conexión con bases de datos 2 12-04-2005 00:18:33
Grid ordenado al añadir registro Tomás Varios 0 13-03-2004 14:58:02
Desorden en Paletas buitrago Varios 1 02-10-2003 16:57:26


La franja horaria es GMT +2. Ahora son las 04:31:58.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi