😏 三角矩阵

三角矩阵

三角矩阵是至少有一个对角的元素相等

[
    1,2,2,
    3,4,2
    5,4,9
]//上三角矩阵

上三角元素都是2,所以只需要存储1 3 4 5 4 9 2 即可

怎样设计其中的对应关系呢?

按行存储

与对称矩阵类似

i>=j:

LOC(aij)=LOC(a11)+(i*(i-1)/2+j-1)*L

i<j:在此例子中都是2

LOC(aij)=n*(n+1)/2

i<=j:

LOC(aij)=LOC(a11)+((2n-i+2)*(i-1)/2+j-i)*L

i>j:

LOC(aij)=n*(n+1)/2

按列存储

它们都是类似的,可以自行推算