设二维数组按行优先顺序存储.doc
上传人:sy****28 上传时间:2024-09-12 格式:DOC 页数:2 大小:37KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

设二维数组按行优先顺序存储.doc

设二维数组按行优先顺序存储.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

1.设二维数组按行优先顺序存储,首地址是1000,每个元素占4个单元,则的存储地址是多少?。分析及参考答案::中i=5,j=7。则位于第6行第8列。利用公式:则的存储地址为:2.已知广义表LS=(a,(b,c,d),e),运用head和tail函数取出LS中原子b的运算是?分析及参考答案::head(head(tail(LS)))得到(b,c,d),e得到b,c,d得到b3.设有一10阶对称矩阵A,压缩存储在一维数组中(以行序为主序),设,求。分析及参考答案::利用公式5-3在中i=8,j=5,故4.已知广义表A=((a,b,c),(d,e,f)),求从A中取出原子e的运算分析及参考答案::head(tail(tail(A)))得到d,e,f得到e,f得到e5.设有一个1010的对称矩阵A,将其下三角部分按行存放在一个一维数组B中,A[0][0]存放于B[0]中,那么A[8][5]存放于B中什么位置。分析及参考答案::根据题意,矩阵A中当元素下标I与J满足I≥J时,任意元素A[I][J]在一维数组B中的存放位置为I*(I+1)/2+J,因此,A[8][5]在数组B中位置为8*(8+1)/2+5=41。6.对于一个n×n的矩阵A的任一矩阵元素a[I][j],按行存储时和按列存储时的地址之差是多少。(若设两种存储的开始存储地址LOC(0,0)及元素所占存储单元d相同)分析及参考答案::按行存储时与按列存储时,计算A[I][j]地址的公式分别为LOC(I,j)=LOC(0,0)+(I*n+j)*d及LOC’(I,j)=LOC(0,0)+(j*n+I)*d两者相减,得LOC(I,j)-LOC’(I,j)=LOC(0,0)+(I*n+j)*d-LOC(0,0)+(j*n+I)*d=(I-j)*n*d+(j-I)*d或:=(I-j)*(n-1)*d