稀疏矩阵的三元组表是如何表示的?

欢迎免费使用小程序搜题/刷题/查看解析,提升学历,成考自考报名,论文代写、论文查重请加客服微信skr-web

稀疏矩阵的三元组表是如何表示的?

由于稀疏矩阵非零元素的分布一般是没有规律的,因此在存储非零元素时,除了存储非零元素的值之外,还必须同时存储该元素的行、列位置(即下标),所以可用一个称为三元组(i,j,αij)来唯一确定一个非零元素。 如果将表示稀疏矩阵非零元素的三元组按行优先的顺序排列,则可得到一个其结点均为三元组的线性表,将这种线性表的顺序存储结构称为三元组表。 三元组表的类型定义如下: #define MaxSize 1000 //假设非零元素个数的最大为1 0 00个 typedef struct{ int i,j; //非零元素的行号、列号(下标) DataType v; //非零元素值 }TriTupleNode; typedef struct{ TriTupleNode data[MaxSize]; //存储三元组的数组 int m,n,t; //矩阵的行数、列数和非零元素个数 }TSMatri x; //稀疏矩阵类型 建立顺序存储稀疏矩阵的三元组表算法如下: void CreateTriTable(TSMatrix*b,int a[][5],int m,int n) { //建立稀疏矩阵的三元组表 int i,j,k=0; for(i=0;idata[k].i=i; //记录非零元素行下标 b—>data[k].j=j //记录非零元素列下标 b一>data[k].v=a[i][j];//保存非零值 k++; //统计非零元素个数 } b一>m=m.b一>n-n; //记录矩阵行列数 b—>t=k; //保存非零个数 }

访客
邮箱
网址

通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作


  • 自动写文案
  • 自动写小说
  • 马上扫码让Ai帮你完成工作
通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作

  • 自动写论文
  • 自动写软件
  • 我不是人,但是我比人更聪明,我是强大的Ai
Top