矩阵可分为稠密矩阵和稀疏矩阵,对于稀疏矩阵而言,使用同样的内存来存储这个矩阵显然是对内存的浪费,那么我们就可以想办法将矩阵中所有的o元素挥着不相关元素剔除,怎么剔除,第一种方法是通过三个一维矩阵来存储原二维矩阵中的所有非0元素,三个矩阵分别为value、column、row, value 数组存储所有的非零元素, column 数组存储所有非零元素的列下标 row 数组存储所有的非零元素的行下标 看例子 [1,0,0,2] [0,0,3,4] [4,5,6,0] [6,0,3,0] 压缩存储后 value = [1,2,3,4,4,5,6,6,3] cloumn=[0,3,2,3,0,1,2,0,2] row = [0,0,1,1,2,2,2,3,3,] 可以看到压缩存储的样子,但是,我们通过row行可以看到,很多重复的数值,也就是每一行的多个元素,每个元素都对应着同样的行号,这样也浪费的空间,因此,我们引入csr稀疏矩阵存储方式,该存储方式将重复的行号压缩,只记录,开头和结尾元素的位置,具体的做法如下图:

CSR稀疏矩阵存储方式相关推荐

  1. 稀疏矩阵转CSR格式存储

    稀疏矩阵转CSR格式存储 1.随机生成稀疏矩阵 #include<stdlib.h> #include<assert.h> #include<iostream> # ...

  2. C语言实现稀疏矩阵存储和转置

    稀疏矩阵存储和转置 稀疏矩阵是矩阵中一种特别的矩阵,主要特点是:非零元素占矩阵所有元素的比例极少.那么,对于这种矩阵的存储,就存在很多很节省空间的方式,核心要点也就是舍弃那些无用元素即零元素,下面将以 ...

  3. 理解稀疏矩阵存储形式

    理解稀疏矩阵存储形式 2022.11.3 记录学习dgl库(dgl.graph接口)的时候,遇到稀疏矩阵存储形式作为参数的情况,不太理解.在查阅资料后做下学习记录: 介绍稀疏矩阵的3种存储格式:COO ...

  4. 数据存储-大数据的三种存储方式

    互联网时代各种存储框架层出不穷,眼花缭乱,比如传统的关系型数据库:Oracle.MySQL:新兴的NoSQL:HBase.Cassandra.Redis:全文检索框架:ES.Solr等.如何为自己的业 ...

  5. 存储方式与介质对性能的影响

    摘要 数据的存储方式对应用程序的整体性能有着极大的影响.对数据的存取,是顺利读写还是随机读写?将数据放磁盘上还将数据放flash卡上?多线程读写对性能影响?面对着多种数据存储方式,我们如何选择?本文给 ...

  6. Java中数据存储方式

    2019独角兽企业重金招聘Python工程师标准>>> 1. 寄存器(register).这是最快的存储区,因为它位于不同于其他存储区的地方--处理器内部.但是寄存器的数量极其有限, ...

  7. Spring Cloud应用开发(七:使用Git存储方式实现分布式配置管理 )

    1.使用Git存储实现管理: 1.1.配置Git.在Git上创建microservice-study-config目录,并在目录中添加开发,预发布和测试的配置文件: 1.2.修改服务端配置文件.将mi ...

  8. SQL与NoSQL区别-存储方式

    传统的关系型数据库采用表格的储存方式, 数据以行和列的方式进行存储,要读取和查询都十分方便.而非关系型数据不适合这样的表格存储方式,通常以数据集的方式,大量的数据集中存储在一起,类似于键值对.图结构或 ...

  9. android的数据存储方式有哪几种方式,android存储数据的几种方式比较

    机身内存读取主要用个两个类文件输入流(FileInputStream)和文件输出流(FileOutputStream):FileInputStream fileInput = this.openFil ...

最新文章

  1. Linux 第60,61天 ansible的playbook
  2. python画折线图详解-利用python画出折线图
  3. UNIX再学习 -- 静态库与共享库
  4. jsp调用struts,jsp调用action,action获取表单提交的参数
  5. String ... String 三个点 jdk1.5的特性.才知道
  6. photoshop CG6 基础知识的学习
  7. YUV格式学习:YUYV、YVYU、UYVY、VYUY格式转换成RGB24
  8. torch.nn 介绍(部分)
  9. python中单词个数_python 统计单词个数
  10. 2021 王道考研 计算机组成原理+习题讲解
  11. 培训机构毕业的程序员被歧视的背后逻辑
  12. C 程序设计语言——第七章练习题
  13. greenplum麒麟安装笔记
  14. centos安装oracle报错,CentOS安装oracle和rsh服务报错处理
  15. mysql使用exists、in、distinct区别
  16. Linux设置开机自启
  17. uni-app页面跳转问题
  18. main c语言中变量的定义,C语言中在main函数中定义的变量是全局变量么_后端开发...
  19. 使用 Zipkin 和 Brave 实现分布式系统追踪(基础篇
  20. 如何简单易懂的了解什么是区块链?

热门文章

  1. 写代码:使用while循环实现输出1,2,3,4,5,7,8,9,11,12
  2. ActiveMQ依赖JDK版本关系
  3. ORB-SLAM3 论文笔记
  4. visual studio配置第三方库
  5. 最小径集的算法_机器学习的利器——集成算法
  6. android手机装windows,安卓手机上运行WindowsXP系统图文教程
  7. 人工智能诗歌写作平台_人工智能将改变文学创作的未来?
  8. strchr strstr函数php,PHP字符串函数之 strstr stristr strchr strrchr
  9. 捷途ipel平台怎么样_奇瑞捷途X有望搭载北斗、GPS双导航系统
  10. php文件内含有隐藏的^m字符,【整理】如何取消Linux下,vi中显示的^M符号