1.7.6 习 题 5

习 题 5

一、填空题

1.特殊矩阵和稀疏矩阵在使用____压缩存储后,失去随机存取的功能。

2.已知有三对角矩阵A8×8压缩存储,其首元素地址LOC(a00)=1000,每个数据元素占用6字节的存储空间,则元素a34的存储地址为____。

3.已知广义表T=(((a),(b)),c,(d),(e,f)),则该广义表表头为____,表长为____,深度为____。

4.设广义表表头为(a,b),表尾为(c,(d,e)),则广义表为____。

二、简答题

1.假设有二维数组A7×8,每个元素用相邻的6个字节存储,存储器按字节编址。已知A的起始存储位置(基地址)为1000,计算:

(1)数组A的体积(即存储量);

(2)数组A的最后一个元素a6,7的起始地址;

(3)按行存储时,元素a3,4的起始地址;

(4)按列存储时,元素a6,6的起始地址。

2.分别画出下列广义表采用头尾链表和扩展线性链表的存储结构图,并利用取表头和表尾的操作分离出原子。

(1)((()),a,((b,c),(),d,(((e))));

(2)((((a),b)),(((),d),(e,f)))。

三、编程题

1.假设矩阵中数据元素为整型数据,试设计一个算法,实现求矩阵中完全不相邻元素之和(即上、下、左、右、对角均不相邻)。

2.假设有两个稀疏矩阵采用十字链表存储,试设计一个算法实现两矩阵的相加运算。

3.试设计一个求广义表深度的算法。

4.试设计一个算法,将广义表中所有的原子分离,并按照顺序输出。