首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >1维vs 2维数组的迭代速度

1维vs 2维数组的迭代速度
EN

Stack Overflow用户
提问于 2013-09-09 19:25:40
回答 1查看 469关注 0票数 0

我正在读一篇文章,内容是,由于数据的存储方式(参见:Fastest way to loop through a 2d array?),水平遍历二维数组的速度比垂直迭代要快。当我读到答案时,这是有意义的,但它让我想知道二维数组和一维数组之间的区别是什么。在相同单元格数的一维和二维数组的迭代中有速度差异吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-09 19:28:08

在Java上,数组有更多的因素和更多的开销。由于数组是对象,所以int[][]ints数组对象的数组。如果hotspot优化或缓存数组访问,这可能会使水平迭代比垂直迭代更快。

对于一维和二维,一维会更快,因为它是一个数组查找,一个原始的和一个数组的查找,一个数组对象的引用的取消引用,然后在那个数组中的一个查找。

然而,这种微优化并不一定是最好的利用您的时间,因为可能有更好的地方进行改进。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18705463

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档