Considere el producto de tres arrays M1, M2 y M3 que tienen w filas y x columnas, x filas y y columnas, y y filas y z columnas. ¿Bajo qué condición llevará menos tiempo calcular el producto como (M1M2)M3 que calcular M1(M2M3)?
(A) Tomar siempre el mismo tiempo
(B) (1/x + 1/z) < (1/w + 1/y)
(C) x > y
(D) (w + x) > (y + z)
Respuesta: (B)
Explicación: Costo de (M1M2)M3 :
= wxy + wyz ------ (i)
Costo de M1(M2M3) :
= xyz + wxz ------ (ii)
Si (M1M2)M3 tomará menos tiempo que M1(M2M3), entonces
wxy + wyz < xyz + wxz
Dividiendo ambos lados por wxyz,
= (1/x + 1/z) < (1/w + 1/y)
Entonces, la opción (B) es correcta.
Cuestionario de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA