低下标优先存储
❶ 三维数组的存储低下标优先存储是以行优先还是列优先
以定义的顺序为准。
如:
int a[2][2][2]={
{{1,2},{3,4}},
{{5,6},{7,8}},
}
这个数组中,a[1][2][1]的值为3
❷ 数据结构问题,会计算的帮忙看看
(1) a0000 =100(3) a3125=1784
我现在太忙了,你自己算算吧!公式我记不住,反正算法其实简单。只要理解就能算!
你把它从安9-8-5-3的顺序数组,现把后面当成一维如9*(8-5-3)就是二维数据的算法,然后再往下细化。
我就用的是这种笨办法求的,不知道别人又没有好点的公式!不过自己推一推公式到挺好的。对学习有帮助!
❸ 假设按低下标优先存储整数数组A9*3*5*8时,第一个元素的字节地址是100,每个整数占4个字节。
a (3125)存储地址是1784
❹ 请教低下标优先存储是什么存储方式
二,三,四维的长度分别是3,5,8,所以A(-3,....),A(-2,,,,,,,),A(-1,......)共有3*3*5*8=360个元素
三,四维长度是5,8,所以A(0,3,....)共有40个元素
四维长度是8,所以A(0,4,-4,..),A(0,4,-3)共有16个元素
最后A(0,4,-2,0)到A(0,4,-2,4)共有5个元素
所以A(0,4,-2,5)到第一个元素A(-3,3,-4,0)共相距421个元素,所以结果是100+4*42=1784
❺ 数据结构习题计算储存地址
a3125应该是这样算的:
100+(3*3*5*8+1*5*8+2*8+5)*4=1784
100是首地址,先不管。求的是a3125,那就用3去乘后面的三位,然后用1乘后面的2位,2再乘后面的一位,5就不用乘了。因为是int型,所以加起来的再乘以4,最后加上首地址,结果就出来了。
五维,六维……N维都是这么算的。你可以验证一下。
❻ 多维数组的下标的低下标存储是什么意思什么是低下标
三维数组A[5][5][5],任取一个数组元素a[1][2][3],这是代码的写法,在高数的写法是a123,所以下标是一百二十三,同样就有a[1][2][4],下标一百二十四,数组的存储是线性连续内存,低下标存储就是低下标优先存储就有a[1][2][3]存放在a[1][2][4]前,同样高下标优先就是反过来。
❼ 问一道数据结构习题:按低下标优先排列储存整数数组A9*3*5*8时,第一个元素地址是100,每个整数四个字节。
举个例子吧。第三个。100+(3*3*5*8+1*5*8+2*8+5)*4=1784
❽ 低下标优先存储是什么存储方式
1、二,三,四维的长度分别是3,5,8,所以A(-3,....),A(-2,,,,,,,),A(-1,......)共有3*3*5*8=360个元素。
2、三,四维长度是5,8,所以A(0,3,....)共有40个元素。
3、四维长度是8,所以A(0,4,-4,..),A(0,4,-3)共有16个元素。
4、最后A(0,4,-2,0)到A(0,4,-2,4)共有5个元素。
5、所以A(0,4,-2,5)到第一个元素A(-3,3,-4,0)共相距421个元素,所以结果是100+4*42=1784。
❾ 假设低下标优先 存储整型数组A[-3:8,3:5,-4:0,0:7]时,第一个元素的字节存储地址是100,
每行元素个数=8个
每页元素个数=5*8=40个
每本元素个数=3*40=120个
A[0,4,-2,5]的存储地址=100+(3*120+1*40+2*8+5)*4=1784
❿ 假设按低下标优先存储整数数组A9×3×5×8时,第一个元素的字节地址是 100,每
假设按低下标优先存储整数数组A9×3×5×8时,第一个元素的字节地址是100,每个整数占四个字节。问下列元素的存储地址是什么?(1)a0000(2)a1111(3)