Tu pregunta está incompleta. La eficiencia de los bucles anidados depende de lo que sucede dentro del bucle y no solo de la estructura del bucle.
De todos modos, digamos que está haciendo las siguientes operaciones en el interior:
ar [i] [j] = br [i] [j] + cr [i] [j];
ar [i] [j + 1] = 2 * br [i] [j + 1];
- ¿Cuáles son algunos de los algoritmos de aprendizaje automático sin supervisión utilizados para la detección de spam?
- ¿Explicar diferentes algoritmos de ruta más corta, sus restricciones, complejidades?
- ¿Es cierto que dado cualquier gráfico con N vértices es un subgrafo inducido del subconjunto gráfico (N). ¿Cómo puedes probarlo o refutarlo?
- ¿Cuáles son los mejores sitios web con problemas de práctica de algoritmos?
- Cómo encontrar proyectos en algoritmo
Acceso a 5 arreglos.
Suponiendo que las matrices se almacenan en forma principal de fila, en el primer caso, en el bucle interno al que accede cerca de elementos 1000 veces. Y después de 1000 acceso cercano, está cambiando a otra fila. Por lo tanto, la localidad de referencia está allí y, por lo tanto, habrá una buena utilización de la memoria caché. Además, debido a que en la iteración actual ya ha accedido a [i] [j + 1] y, por lo tanto, en la siguiente iteración, [i] [j] estará directamente disponible en la memoria caché. Ahora compare esto con el segundo bucle anidado y verá por qué el primero es mejor.