/yiw 内存访问连续的玄学问题

学术版

zhiyangfan @ 2021-10-22 10:43:12

刚刚看学术版有人问内存访问连续的问题,然后评论区有人说小的放前面快,正好我在写一道开 ch[N][2] 的题,我就去交换了一下试试,为啥反而更慢了/jk

小的放前面的评测

大的放前面的评测

哦,关于评测机波动的怀疑,我又交了一发然后还是小的放前面快(虽然差距更小了?所以其实没啥区别?)我看那个帖子的评论区有人因为这个被卡掉了,我非常害怕就来问问qwq


by x义x @ 2021-10-22 10:46:08

内存访问是否连续的问题不是一句"小的放前面快"就可以概括的,还是要具体问题具体分析


by zhiyangfan @ 2021-10-22 10:48:45

@x义x /bx 好吧,这种东西影响大吗qwq,我感觉我从来都没了解过qwq。


by x义x @ 2021-10-22 10:51:04

@zhiyangfan 影响大不大也得看具体情况(

总之就是如果最后一维很大的话尽量不要让前几维变动次数太多


by zhiyangfan @ 2021-10-22 10:55:32

@x义x okk 谢谢谢谢/bx


by x义x @ 2021-10-22 10:57:03

@zhiyangfan 最好的方法其实就是遍历每一种排列顺序看哪种最快(


by zhiyangfan @ 2021-10-22 11:04:41

@x义x 枚举法yyds(


by 望月Asta @ 2021-10-22 11:07:47

情况不同还是不一样

ch[N][2]数组连续访问的是ch[N][0]ch[N][1]这两个地址,是连续的,于是小的一维放后面.

但是在例如st表这样的,访问的情况不一样,参见这张图

其实我也不太懂(逃


by zhiyangfan @ 2021-10-22 11:15:46

@望月Asta /jk 谢谢谢谢谢谢,大概明白了一点了,我回去再仔细研究一下


by conprour @ 2021-10-22 11:20:32

@望月Asta 所以st表要小的一维放在前面吗?


by 望月Asta @ 2021-10-22 11:24:26

@conprour 是这个意思(您又在卷啊orz


| 下一页