2024-11-16 特殊矩阵的压缩存储

一、数组的存储结构

1.一维数组:各元素大小相同,且物理上连续存放。a[i]=起始地址+i*siezof(数组元素大小)

2.二维数组:b[j][j]=起始地址+(i*N+j)*sizeof(数组元素大小)

二、特殊矩阵

1.普通矩阵的存储:使用二维数组来存储。

2.对称矩阵的压缩存储:若n阶方阵中任意一个元素a ij都有 aij-aji。则该矩阵为对称矩阵。(主对角线: i=j)

压缩存储策略:只存储主对角线+下三角区。

按行优先:

3.三角矩阵的压缩存储: 除主对角线和下三角区(或上三角区),其余的元素都相同。

4.三对角矩阵的压缩存储: 当Ii-jI>1时,有a ij =0。(1<=i,j<=n)

5.稀疏矩阵的压缩:非零元素远远少于矩阵元素的个数。

法1:

法二:

总结:

相关推荐
I_LPL2 小时前
hot100贪心专题
数据结构·算法·leetcode·贪心
颜酱3 小时前
DFS 岛屿系列题全解析
javascript·后端·算法
WolfGang0073213 小时前
代码随想录算法训练营 Day16 | 二叉树 part06
算法
2401_831824964 小时前
代码性能剖析工具
开发语言·c++·算法
Sunshine for you5 小时前
C++中的职责链模式实战
开发语言·c++·算法
qq_416018726 小时前
C++中的状态模式
开发语言·c++·算法
2401_884563246 小时前
模板代码生成工具
开发语言·c++·算法
2401_831920746 小时前
C++代码国际化支持
开发语言·c++·算法
m0_672703316 小时前
上机练习第51天
数据结构·c++·算法
ArturiaZ6 小时前
【day60】
算法·深度优先·图论