嗨,有人对时空性有疑问。我在类(class)理论中读到
空间局部性
如果引用了一项,则不久将引用另一地址附近的可能性。
时间局部性
在某一时间点被引用的一项倾向于很快再次被引用。
好的,但是我怎么在代码中看到呢?我想我了解时间局部性的概念,但还不了解空间局部性。例如在这个循环中
for(i = 0; i < 20; i++)
for(j = 0; j < 10; j++)
a[i] = a[i]*j;
当访问a [i]十次时,内部循环将调用相同的内存地址,所以我想这是时间局部性的一个示例。但是上述循环中是否也存在空间局部性?
最佳答案
当然。例如,在引用a [5]之后,您将引用a [6]。