数据结构课后习题及解析第五章.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《数据结构课后习题及解析第五章.doc》由会员分享,可在线阅读,更多相关《数据结构课后习题及解析第五章.doc(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第五章习题5.1 假设有6行8列的二维数组A,每个元素占用6个字节,存储器按字节编址。已知A的基地址为1000,计算:数组A共占用多少字节;数组A的最后一个元素的地址;按行存储时元素A36的地址;按列存储时元素A36的地址;5.2 设有三对角矩阵Ann ,将其三条对角线上的元素逐行地存于数组B(1:3n-2)中,使得Bk= aij ,求:(1) 用i,j表示k的下标变换公式;(2) 用k表示i,j的下标变换公式。5.3假设稀疏矩阵A和B均以三元组表作为存储结构。试写出矩阵相加的算法,另设三元组表C存放结果矩阵。5.4在稀疏矩阵的快速转置算法5.2中,将计算positioncol的方法稍加改动,
2、使算法只占用一个辅助向量空间。5.5写一个在十字链表中删除非零元素aij的算法。5.6画出下面广义表的两种存储结构图示: (a), b), ( ), d), (e, f)5.7求下列广义表运算的结果:(1) HEAD(a,b),(c,d);(2) TAIL(a,b),(c,d);(3) TAILHEAD(a,b),(c,d);(4) HEADTAILHEAD(a,b),(c,d);(5) TAILHEADTAIL(a,b),(c,d);实习题若矩阵Amn中的某个元素aij是第i行中的最小值,同时又是第j列中的最大值,则称此元素为该矩阵中的一个马鞍点。假设以二维数组存储矩阵,试编写算法求出矩阵中
3、的所有马鞍点。第五章答案5.2设有三对角矩阵Ann,将其三条对角线上的元素逐行的存于数组B1.3n-2中,使得Bk=aij,求:(1)用i,j表示k的下标变换公式;(2)用k表示i、j的下标变换公式。【解答】(1)k=2(i-1)+j(2) i=k/3+1, j=k/3+k%3 ( 取整,%取余)5.4在稀疏矩阵的快速转置算法5.2中,将计算positioncol的方法稍加改动,使算法只占用一个辅助向量空间。【解答】算法(一) FastTransposeTSMatrix(TSMartrix A, TSMatrix *B) /*把矩阵A转置到B所指向的矩阵中去,矩阵用三元组表表示*/int co
4、l,t,p,q;int positionMAXSIZE;B-len=A.len; B-n=A.m; B-m=A.n;if(B-len0) position1=1; for(t=1;t=A.len;t+) positionA.datat.col+1+; /*positioncol存放第col-1列非零元素的个数, 即利用poscol来记录第col-1列中非零元素的个数*/*求col列中第一个非零元素在B.data 的位置,存放在positioncol中*/for(col=2;col=A.n;col+) positioncol=positioncol+positioncol-1; for(p=1;
5、pdataq.row=A.datap.col; B-dataq.col=A.datap.row; B-dataq.e=A.datap.e; Positioncol+;算法(二)FastTransposeTSMatrix(TSMartrix A, TSMatrix *B) int col,t,p,q;int positionMAXSIZE;B-len=A.len; B-n=A.m; B-m=A.n;if(B-len0) for(col=1;col=A.n;col+) positioncol=0; for(t=1;t0;col-) t=t-positioncol; positioncol=t+1;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 课后 习题 解析 第五
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内