单选题 设下三角矩阵A为:
【正确答案】 A
【答案解析】如何将a ij 保存在数组B中,保存在哪个位置?也就是说,设k为a ij 保存在B中时的下标,那么k和i、j有什么关系?
A[i,j]在B中的位置=(A中前i-1行非0元素的个数)
+(A中第i行、第j列之前非0元素的个数,包括第j列)
=(1+2+3+…+(i-1))+j
=i(i-1)/2+j
则A[i,j]存放在B中的元素下标k—i(i一1)/2+j(因为B的数据元素从1开始)。
例如:A[3,3]保存在B中的位置为
k=3×(3=1)/2+3=6,即A[3,3]保存在数据元素B[6]中。