先行后列和先列后行的时间比较


根据程序的局部性原理,一段时间内,程序访问的内存空间可能局限于某个区域

因此程序执行时,系统往往将程序访问地址附近的数据也一并载入缓存

而C++中二维数组在内存中连续存储,二维循环遍历数组,先按列循环再按行 和 先按行再按列 hint次数会有很大不同,执行所需时间也往往有所不同


该程序测试了5000*5000的数组通过上述两种方式执行100次所需消耗的时间

分别是4399ms和11735ms,约为2.67倍