假设一个10×10的上三角矩阵A按照列优先顺序压缩存储在一维数组B中,则B数组的大小应为()
A、
50
B、
55
C、
100
D、
101
【正确答案】:B
【题目解析】:
三角矩阵:以主对角线为界的上(下)半部分是一个固定的值c或零。
为存储n阶的三角矩阵,采用数组M[n(n+1)/2],把矩阵中上(下)三角部分的n(n+1)/2个元素存储在数组M[0]〜M[n(n+1)/2-1]的n(n+1)/2个单元中,其中c若非0,则存放到数组的M[n (n+1)/2]中。
故本题中,n(n+1)/2=10*11/2=55。