单选题 下三角矩阵A[0..8,0..8]如下图所示,若将其下三角元素(即行下标不小于列下标的所有元素)按列压缩存储在数组M[0..m]中,即A[0,0]存储在M[0]、A[1,0]存储在M[1]、A[2,0]存储在M[2],…,A[8,8]存储在M[44],则元素A[5,5]存储在______。若将其下三角元素按行压缩存储在数组M[0..m]中,即A[0,0]存储在M[0]、A[1,0]存储在M[1]、A[1,1]存储在M[2],…,A[8,8]存储在M[44],则元素A[5,5]存储在______。
单选题 A.M[15] B.M[20] C.M[35] D.M[39]
【正确答案】 C
【答案解析】
单选题 A.M[15] B.M[20] C.M[35] D.M[39]
【正确答案】 B
【答案解析】[解析] 若按列压缩:由A[0,0]存储在M[0]、A[1,0]存储在M[1]、A[2,0]存储在M[2],…,A[8,8]存储在M[44],可推出,第一列共有9个元素,以此可计算出,A[5,5]存储在M[35]。若按行压缩:上(下)三角矩阵是指矩阵的下(上)三角元素取值相同,设此取值为常数C(一般为0),则三角矩阵只需存储常数C和上(下)三角中的数据元素即可。故其压缩存储方式与对称矩阵相同,只不过多出一个常数的存储空间。对于任意给定一组下标(i,j),均可在sa中找到矩阵元aij,反之,对所有的k=0,1,2,…,n(n+1)/2-1,都能确定sa[k]中的元在矩阵中的位置(i,j)。n阶对称矩阵A的压缩存储如下所示: