根据压缩存储方式,对称矩阵只需存储上三角部分(包括对角线)。对于一个 n 阶的对称矩阵,共有 (n*(n+1))/2 个元素需要存储。
由于采用行序为主存储,第 i 行的元素中,前 i-1 个元素是该行之前的所有行的上三角元素,第 i 个元素是该行之前的所有行的上三角元素和该行的对角线元素。
根据这个规律,我们可以计算出 a 行列所在的地址:
按照这种方式继续推算,可以得到下面的地址序列:
1, 2, 3, 5, 6, 7, 9, 10, 11, 12, ...
因此,a85 的地址为 85。