该篇主要讲述链表:不过是从底层实现谈起
该文主要是针对单链表
由来:
单位
内存 纳秒(10^-9)
CPU 皮秒(10^-12)
* cpu 读取内存(速度慢)数据后,会将其放入高速缓存(速度快)当中,如果后来的计算再用到此数据,在缓存中能读到的话,就不必读内存了
* 缓存的最小存储单位是缓存行(cache line),一般是 64 bytes,一次读的数据少了不划算啊,因此最少读 64 bytes 填满一个缓存行,因此读入某个数据时也会读取其**临近的数据**,这就是所谓**空间局部性**
对效率的影响
比较下面 ij 和 ji 两个方法的执行效率
int rows = 1000000;
int columns = 14