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:

法二:

总结:

相关推荐
Hag_2019 小时前
LeetCode Hot100 42.接雨水
算法·leetcode·职场和发展
回敲代码的猴子19 小时前
2月13日打卡
算法
老鼠只爱大米19 小时前
LeetCode经典算法面试题 #153:寻找旋转排序数组中的最小值(暴力搜索、二分查找等五种实现方案详细解析)
算法·leetcode·二分查找·旋转数组·最小值搜索
春日见19 小时前
commit与fetch
linux·人工智能·算法·机器学习·自动驾驶
俩娃妈教编程19 小时前
洛谷选题:P1888 三角函数
c++·算法
TracyCoder12320 小时前
LeetCode Hot100(56/100)——131. 分割回文串
算法·leetcode
_OP_CHEN20 小时前
【算法提高篇】(一)线段树之入门篇:从原理到实战,搞定区间操作难题
数据结构·算法·蓝桥杯·线段树·c/c++·区间查询·acm、icpc
IvanCodes20 小时前
九、C语言动态内存管理
c语言·开发语言·算法
pp起床20 小时前
贪心算法 | part05
算法·贪心算法
MediaTea20 小时前
Python:迭代器的应用场景
开发语言·python·算法