Answer from cs61c-al (Phillip Chin 16156822) for Question 2 The compiler uses a technique called blocking. Essentially by switching the order around, the way in memory is searched is altered. This will also affect the memory hiearchy. Since j is the second array block, it may be quicker to access that readily because it will be changing with less values (1 to 20), rather than constantly going through 200 different values with i.