特殊矩阵的压缩矩阵

特殊矩阵的压缩矩阵

码农世界 2024-05-27 后端 92 次浏览 0个评论

目录

前提条件:

类型:对称矩阵,三角矩阵、三对角矩阵、稀疏矩阵

1:对称矩阵:

定义:n阶矩阵A 中任意一元素都有ai,j=aj,i(1<=i,j<=n)

图像:

表达式:

计算过程:

2:三角矩阵

概念:

前提:

下三角表达式:

计算逻辑:

上三角表达式:

计算逻辑:


前提条件:

        矩阵元素通常写成 ai,j , i,j表示行号和列号是从1开始。

        二维数组元素写成a[i][j], i,j表示元素下标一般是从0开始。

        一维数组元素写成ai, i表示元素下标,一般从0开始。

类型:对称矩阵,三角矩阵、三对角矩阵、稀疏矩阵

        其中三对角和稀疏矩阵不做讲解

1:对称矩阵:

储存下三角按行有限储存如下:

        定义:n阶矩阵A 中任意一元素都有ai,j=aj,i(1<=i,j<=n)

        图像:

        表达式:

$$

\huge k = \begin{cases} \frac{i(i-1)}{2} + j-1,\quad i \geqslant j \\ frac{j(j-1)}{2} + i-1, \quad j > i \end{cases} \tag{1}

$$

计算过程:

特殊矩阵的压缩矩阵

思考:当问题是按照上三角 且 按行压缩存储时,公式应该如何写?

其实处理逻辑是相通的,都是在求ai,j 前面有多少个元素的表达式,继续分成前i-1行前元素之和与第i行前元素的求和。

2:三角矩阵

概念:

        ”下三角矩阵“:代表下三角域及主对角线元素无规律,而上三角区域中所有元素都相等。

        “上三角矩阵”:代表上三角域及主对角线元素无规律,而下三角区域中所有元素都相等。

前提:

        压缩后共有 $$\frac{i(i+1)}{2} + 1$$
个元素。故数组B初始化为 B【(i(i+1))/2 + 1】,B数组下标从 0 -(n(n+1)/2。

        解释:上三角(或下三角)加主对角线共有 \huge \frac{i(i+1)}{2}个元素,而上三角全部都用1个元素来表示。

下三角表达式:

$$

\huge k = \begin{cases}\frac{i(i-1)}{2} + j-1,\quad i \geqslant j \\ \frac{n(n+1)}{2} , \quad j > i\end{cases}\tag{2}

$$

        计算逻辑:

        下三角矩阵的计算方式和对称矩阵当 i >=  j 时计算逻辑是相同的,当j>i时,直接就在B中最后一个元素。

上三角表达式:

按行优先级压缩:先对行进行压缩

$$

\huge k = \begin{cases}\frac{(i-1)(2n-i+2)}{2} + j-i,\quad j \geqslant i \\ \frac{n(n+1)}{2} , \quad i > j\end{cases}\tag{1}

$$

        计算逻辑:

特殊矩阵的压缩矩阵

按列优先级压缩:先对列进行压缩

        计算逻辑

        按列优先级的上三角矩阵的计算方式和对称矩阵当 j > i 时计算逻辑是相同的,当i >= j时,直接就在B中最后一个元素。

转载请注明来自码农世界,本文标题:《特殊矩阵的压缩矩阵》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,92人围观)参与讨论

还没有评论,来说两句吧...

Top