稀疏矩阵(C)
来源:互联网 发布:mac os x lion 10.7.3 编辑:程序博客网 时间:2024/06/05 04:05
说明
如果在矩阵中,多数的元素并没有资料,称此矩阵为稀疏矩阵(sparse matrix ), 由于矩阵在程式中常使用二维阵列表示,二维阵列的大小与使用的记忆体空间成正比,如果多数的元素没有资料 , 则会造成记忆体空间的浪费 , 为 此 , 必须设计稀疏矩阵的阵列储存方式 , 利用较少的记忆体空间储存完整的矩阵资讯。
C
#include<stdio.h>#include<stdlib.h>int main(){ //原矩阵 /* 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 6 0 0 0 0 9 0 0 0 0 0 0 0 12 0 三十个数*/ //第一行代表的是,原矩阵中的行,列,以及非零元素的个数,如下:5行6列4个非零元素 //(从第二行开始)第一列代表非零元素在原矩阵中的横坐标,第二列代表非零元素在原矩阵中的纵坐标, //第三列代表改位置的存储值,如:1,1,3代表原矩阵中的第一行第一列的值3. //这样就能用15个元素来带代表原矩阵中的30个元素 int num[5][3] = { 5,6,4, 1,1,3, 2,3,6, 3,2,9, 4,4,12 }; printf("稀疏矩阵\n"); for (int i = 0; i < 5; i++) { for (int j = 0; j < 3; j++) { printf("%4d", num[i][j]); } printf("\n"); } printf("还原矩阵\n"); int k = 1; for (int i = 0; i < num[0][0]; i++) { for (int j = 0; j < num[0][1]; j++) { if (i == num[k][0] && j == num[k][1]) { printf("%4d", num[k][2]); k++; } else printf("%4d", 0); } printf("\n"); } system("pause"); return 0;}
阅读全文
0 0
- 稀疏矩阵(C)
- 稀疏特征(稀疏矩阵)
- 数组(稀疏矩阵)
- C语言 稀疏矩阵操作(三元组表示法)
- 稀疏矩阵的三元组表示(ANSI C)
- 稀疏矩阵的快速转置(C语言版)
- 稀疏举证指逆转矩阵(C语言实现)
- 稀疏矩阵利用三元组相乘(c语言)
- 数据结构--稀疏矩阵(转置)
- 数据结构--稀疏矩阵(相乘)
- 数据结构之---C语言实现稀疏矩阵
- C语言:稀疏矩阵的转置
- 实现稀疏矩阵相乘C/C++
- 矩阵(稀疏矩阵)的压缩存储
- 《矩阵》——稀疏矩阵(Java)
- 矩阵相乘法(稀疏矩阵)
- 数据结构::矩阵(二)--稀疏矩阵
- 对称矩阵与稀疏矩阵(转置)
- chasing实习总结
- 高薪全栈工程师必备Linux 基础
- vue移动端项目中返回上一路由页面、根据当前路由信息控制返回键的显示与隐藏
- 技术网站
- C# Task WhenAny和WhenAll 以及TaskFactory 的ContinueWhenAny和ContinueWhenAll的实现
- 稀疏矩阵(C)
- 【python入门笔记】(一)安装与配置环境
- URL特殊字符及编码值列表大全
- EasyNVR如何实现跨域鉴权
- windows7无声音,提示未插入扬声器或耳机的解决办法
- ios 提示新版本更新
- JNI Java调用so包具体方法
- vue实战开发原理
- 小程序文字跑马灯 h5文字跑马灯