for(i = 0; i < n; i++) { for(j = 0; j < m; j++) { /* Accessing a[j][i] is inefficient because we are not accessing array sequentially in memory */ } } /* After Interchanging */ for(j = 0; j < m; j++) { for(i = 0; i < n; i++) { /* Accessing a[j][i] is efficient now*/ } }