数据结构

假设以行为优先存储的三维数组A[5][6][7],A[0][0][0]的地址为1100,每个元素占两个存储单元,则A[4][3][2]的地址为()。

题目

假设以行为优先存储的三维数组A[5][6][7],A[0][0][0]的地址为1100,每个元素占两个存储单元,则A[4][3][2]的地址为()。

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

●假设一个6阶的下三角矩阵B按列优先顺序压缩存储在一维数组A中,其中A[0]存储矩阵的第一个元素b11,则A[14]存储的元素是 (52) 。

(52) A.b63

B.b62

C.b64

D.b53


正确答案:A
【解析】此题要寻找A[k]与b[i][j]之间的关系。6阶下三角阵b从第1列到第6列,每一列的元素个数依次为:6、5、4、3、2、1,元素总数为6×(6+1)/2=21。按列顺序存放在一维数组A[21]中(b11存放在A[0]中),列之前的第1列到第j-1列元素个数为:6+5+4+…+(6-(j-1)+1)=(6+6-(j-1)+1)×(j-1)/2=(14-j)×(j-1)/2。第i列上的第i行之前有i-j个元素。因此有:k=(14-i)×(j-1)/2+i-j。
已知k=14,根据每一列的元素个数,显然列号j应该满足条件2<j≤3,即j应该取值3。
于是有:k=(14-j)×(i-1)/2+i-j=(14-3)×(3-1)/2+j-3=8+i
i=k-8=14-8=6。所以,A[14]存储的是元素b63。

第2题:

设有二维数组A[0…9][0…19],其每个元素占两个字节,数组按列优先顺序存储,第一个元素的存储地址为100,那么元素A[6,6]的存储地址为__________。


正确答案:
232
二维数组A[0…m][0…n]数据按行优先顺序存储时,下界为0时元素aij的地址计算公式为:LOC(aij)=LOC(a00)+D×(m+1)+i]×d。所以本题中元素的存储地址为100+[6×10+6]×2=232。

第3题:

假设三维数组A[10][9][8]按行优先顺序存储,若每个元素占3个存储单元,且首地址为100,则元素A[9][8][7]的存储地址是501。()

此题为判断题(对,错)。


参考答案:错误

第4题:

假设以行序为主序存储二维数组array[100][100],设每个数据元素占2个存储单元,基地址为10,下标从0开始,则元素array[5][5]的地址为()。

A.808

B.818

C.1010

D.1020


正确答案:C

第5题:

二维数组A[0,…,8][0,…,9],其每个元素占2字节。从首地址400开始,按行优先顺序存储,则元素A[8][5]的存储地址为( )。

A.570

B.506

C.410

D.482


正确答案:A
A。【解析】A[8][5]元素存储的位置在第9行第6列,所以A[8][5]之前存储的个数应为8×10+5=85,这些元素占用的空间为85×2字节=170字节,所以A[8][5]的存储位置为400+170=570。

第6题:

{0、2、1、4、3、9、5、8、6、7}是以数组形式存储的最小堆,删除堆顶元素0后的结果是()

A.{2、1、4、3、9、5、8、6、7}

B.{1、2、5、4、3、9、8、6、7}

C.{2、3、1、4、7、9、5、8、6}

D.{1、2、5、4、3、9、7、8、6}


正确答案:D

第7题:

数组b[1..10,-2..6,2..8]以行优先的顺序存储,设第一个元素的首址是100,每个元素的长度为3。元素b[5,0,7]的存储首址为( )。

A、900

B、912

C、910

D、913


正确答案: D

第8题:

假设以行优先顺序存储三维数组A[5][6][7],其中元素A[0][0][0]的地址为1100,并且每个元素占2个存储单元,则A[4][3][2]的地址是1264。()

此题为判断题(对,错)。


正确答案:错误

第9题:

设有二维数组A[0…9,0…19],其每个元素占两个字节,第一个元素的存储地址为100,若按行优先顺序存储,则元素A[6,6]的存储地址为【 】。


正确答案:352
352 解析:行优先:Loc=100+(6×(19+1)+6)×2= 352。若列优先:Loc=100+(6×(9+1)×6)×2=232

第10题:

对于二维数组a[0.. 4,1.. 5],设每个元素占1个存储单元,且以列为主序存储,则元素a[2,2]相对于数组空间起始地址的偏移量是______。

A.5

B.7

C.10

D.15


正确答案:B
解析:此类题型以前考过多次,为了让大家能更好地理解题目的意思以及解题的思想,图3-81给出了二维数组a[0..4,1..5]的结构。因为以列为主序存储,所以a[0,1]存储在1号存储单元,a[1,1]存储在2号存储单元……以此类推,a[2,2]存储在8号存储单元,所以相对于数组空间起始地址的偏移量为8-1,即7。偏移量就是差值。所以答案为:B。此外,若数组以行为主序存储,则数组的结构如图3-82所示。

更多相关问题