怎么比较数组,求指教。

clear0000 2010-11-17 12:56:28
a[10][100]和a[100][10]有什么不同,那个效率高?这个问题怎么回答?
完全不知道。我知道的就是分配的不一样。但是分配的方式不是也有以行为主和以列为主吗?
...全文
92 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
clear0000 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 namelij 的回复:]

行数跟列数相差不大的话,效率没什么区别,否则的话,行数大的效率高
[/Quote]

看这题数不大,就第一个了。。如果是数大呢?又怎么比较。主要是我想知道这个该怎么比较它们的效率。
w251988889 2010-11-17
  • 打赏
  • 举报
回复
没多大不同吧..计算机里都习惯行列..
象a[10][100]。。没人会特意的存储数据成a[100][10]..
习惯问题.
就像计算机里大多从0开始计算的一样
  • 打赏
  • 举报
回复
行数跟列数相差不大的话,效率没什么区别,否则的话,行数大的效率高
赵4老师 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 gules 的回复:]
逻辑概念上不同:第一个有10行,每行100个元素;第二个100行,每行10个元素。

从写双层循环的角度来说,一般而言,第一个的效率要高,因为内层循环中局部值聚集量大,因此高速缓存的作用更有效(命中率大增)。
[/Quote]
正解!
天煞19 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 hnuqinhuan 的回复:]
一般行数大的效率大一点
[/Quote]
llu131313 2010-11-17
  • 打赏
  • 举报
回复
6楼正解~
不过实际应用基本没这么用的 - -
luciferisnotsatan 2010-11-17
  • 打赏
  • 举报
回复
没多大差异。这个应该是在2:8的2里
w251988889 2010-11-17
  • 打赏
  • 举报
回复
说了没什么意义...
(1)象10个镇..每个镇100个村都是一条线的.....
(2)象100个镇...每个村是10个的...........
真要按效率...就是..我要到第二个镇
(1)只要过100个村
(2)要过10个村..
难道你就是你想要的效率......为了这点还特意把数据够改了- -
gules 2010-11-17
  • 打赏
  • 举报
回复
逻辑概念上不同:第一个有10行,每行100个元素;第二个100行,每行10个元素。

从写双层循环的角度来说,一般而言,第一个的效率要高,因为内层循环中局部值聚集量大,因此高速缓存的作用更有效(命中率大增)。
無_1024 2010-11-17
  • 打赏
  • 举报
回复
一般行数大的效率大一点
kingmon0532 2010-11-17
  • 打赏
  • 举报
回复
没有太大区别.都是一个地址加偏移量

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧