Ver Mensaje Individual
  #32  
Viejo 22/02/16, 13:04:32
Array

[xs_avatar]
WillyWeb WillyWeb no está en línea
Usuario muy activo
 
Fecha de registro: dic 2008
Localización: Hoy aquí y mañana allí
Mensajes: 2,067
Modelo de smartphone: OnePlus 3T | Xiaomi 9T Pro
Tu operador: Vodafone
Lo tenía todo en la cabeza y por fin he sacado un rato para escribirlo en Tasker.

Me falta por añadir la verificación en binario (todavía no me habéis dicho qué sistema pensáis que es más rápido, cmp o md5) pero el resto ya es totalmente funcional. Lo he probado en dos carpeta de mi WhastApp con "posibles" duplicados y han cantado por peteneras.

Carpeta de imágenes recibidas
3700 archivos
80 posibles duplicados
79300 milisegundos (unos 80 segundos)

Carpeta de imágenes enviadas
500 archivos
19 posibles duplicados
10500 milisegundos (unos 11 segundos)

Tal y como ha explicado Caravantes, comparar cada archivo con el resto requiere una burrada de iteraciones. Exactamante...

C(500,2)=124750 para la carpeta de 500 archivos
C(3700,2)=6843150 para la carpeta de 3700 archivos

Un bucle de 10000 iteraciones de Tasker, limpio, sin nada dentro, sólo el For y el EndFor me lleva unos 19 segundos, así que uno de 124750 iteraciones (el de los 500 archivos) me llevaría mucho más de 200 segundos. Y eso sólo para pasar por todas las combinaciones posibles, sin hacer nada más. Con mi sistema he detectado los 19 posibles duplicados en 11 segundos.

Esto marcha
__________________
Miembro del equipo que promueve el [Subforo de Tasker]

Si das pescado a un hombre hambriento le nutres una jornada. Si le enseñas a pescar le nutrirás toda la vida. (Lao-Tsé - Filósofo chino)

Última edición por WillyWeb Día 22/02/16 a las 13:22:19.
Responder Con Cita