第八周 專案4 稀疏矩陣的三元組表示的實現及應用

2021-08-14 03:18:32 字數 1805 閱讀 9241

#define m 6    

#define n 7    

#define maxsize  100         //矩陣中非零元素最多個數    

typedef int elemtype;    

typedef struct    

tupnode;                  //三元組定義    

typedef struct    

tsmatrix;                 //三元組順序表定義    

void creatmat(tsmatrix &t,elemtype a[m][n]);  //從乙個二維稀疏矩陣建立其三元組表示    

bool value(tsmatrix &t,elemtype x,int i,int j);  //三元組元素賦值    

bool assign(tsmatrix t,elemtype &x,int i,int j); //將指定位置的元素值賦給變數    

void dispmat(tsmatrix t);//輸出三元組    

void trantat(tsmatrix t,tsmatrix &tb);//矩陣轉置    

#include "stdio.h"    

#include "tup.h"    

void creatmat(tsmatrix &t,elemtype a[m][n])  //從乙個二維稀疏矩陣建立其三元組表示    

t.data[k].r=i;    

t.data[k].c=j;    

t.data[k].d=x;    

t.nums++;    

}    

return true;                        //成功時返回true    

}    

bool assign(tsmatrix t,elemtype &x,int i,int j)  //將指定位置的元素值賦給變數    

void dispmat(tsmatrix t)        //輸出三元組    

,    

,    

,    

,    

,    

};    

creatmat(t,a);    

printf("b:\n");    

dispmat(t);    

if (assign(t,x,2,5)==true)  //呼叫時返回true    

printf("assign(t,x,2,5)=>x=%d\n",x);    

else  //呼叫時返回false    

printf("assign(t,x,2,5)=>引數錯誤\n");    

value(t,y,2,5);    

printf("執行value(t,10,2,5)\n");    

if (assign(t,x,2,5)==true)  //呼叫時返回true    

printf("assign(t,x,2,5)=>x=%d\n",x);    

else  //呼叫時返回false    

printf("assign(t,x,2,5)=>引數錯誤\n");    

printf("b:\n");    

dispmat(t);    

trantat(t,tb);    

printf("矩陣轉置tb:\n");    

dispmat(tb);    

return 0;    

}

第八周專案4 稀疏矩陣的三元組表示的實現及應用

檔名稱 cpp1.作 者 劉思源 完成日期 2017 年 10 月 22 日 版 本 號 v1.0 問題描述 建立稀疏矩陣三元組表示的演算法庫,包括 頭文tup.h,定義資料型別,宣告函式 原始檔tup.cpp,實現稀疏矩陣三元組表示的基本運算,主要演算法包括 void creatmat tsmat...

第八周專案4 稀疏矩陣的三元組的實現與應用

檔名稱 cpp1.作 者 劉思源 完成日期 2017 年 10 月 22 日 版 本 號 v1.0 問題描述 採用三元組儲存稀疏矩陣,設計兩個稀疏矩陣相加的運算演算法 提示1 兩個行數 列數相同的矩陣可以相加 提示2 充分利用已經建立好的演算法庫解決問題 提示3 教材例6.3已經給出兩個稀疏矩陣相加...

第八周專案3 稀疏矩陣的三元組表示的實現及應用

標頭檔案 tup.h ifndef tup h included define tup h included define m 6 define n 7 define maxsize 100 矩陣中非零元素最多個數 typedef int elemtype typedef struct tupnod...