数据结构、数组存储的地址怎么计算?

 我来答
帐号已注销
2020-12-31 · TA获得超过77万个赞
知道小有建树答主
回答量:4168
采纳率:93%
帮助的人:162万
展开全部

数组存储地址的计算:

二维数组为例,其他的依次类推

假设起始下标从0开始,按行存储(总共有M行,N列):

A[i][j]=A[0][0]+(i*N+j)*L

这地方的L是数组中的一个元素所占的存储空间。

或:

即使A[8][5]前面燃滚有多少个元素,

行下标i从1到8,列下标j从1到10,所有A[8][5]之前共有n7*10+4(74)个元素指旅,

每个元素的长度为3个字节,故共有3*74=222个字节

首地址是SA,则A[8][5]地址是SA+222

扩展资料:

在数据的顺序存储中,由于每个元素的存储位置都可以通过简单计算得到,所以访问元素的时间都相同;而在数据的链接存储中,由于每个元素的存储位置保存在它的前驱或后继结点中,所以只有当访问到其前驱结点或后继结点后才能够按指针访问到,访问任一元素的时间与该元素结点在唯段凳链式存储结构中的位置有关。

参考资料来源:百度百科-存储结构

屋石
推荐于2019-10-29 · TA获得超过5353个赞
知道大有可为答主
回答量:1909
采纳率:86%
帮助的人:899万
展开全部
数组存储地址的计算蔽辩:以二维数组为例,其他的依次类推:
假设起始下标从0开始,按行存储(总裂并中共有M行,N列):
A[i][j]=A[0][0]+(i*N+j)*L
这地方的L是数组中的一个元素所肆山占的存储空间
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式