编写程序,从字符文件读入三个正整数m, n, t以及t个三元组(i, j, e)建立稀疏矩阵的十字链表存储结构。其中,m、n分别表示矩阵行数和列数;i, j为非零元素行号和列号。编写算法,实现矩阵转置,输出转置后的三元组到另一字符文件中,检查你的转置结果是否正确。要求转置时不得新建元素结点(但允许新建行头/列头结点数组以及删除行头/列头结点数组,转置前后,总头结点不允许改变)。
2021-12-20 21:02:26 64KB 数据结构
采用十字链表表示稀疏矩阵,并实现矩阵的加法运算
1
广义表 三元组表 十字链表 c语言描述 建立稀疏矩阵的三元组表的算法、按矩阵的列序转置算法、按矩阵的行序转置算法 建立稀疏矩阵的十字链表的算法、输出稀疏矩阵十字链表的算法 求广义表的表头、求广义表的表尾、求广义表的长度、求广义表的深度、统计广义表中数目、复制广义表
2021-12-06 11:36:29 4KB 广义表 十字链表 三元组表 C语言
1
以三元组形式输出用十字链表表示的矩阵的非零元素及其下标
2021-12-03 15:44:20 1KB 算法
1
数据结构课程设计《稀疏矩阵乘法运算的十字链表实现》
1
用C++编写的程序,有很详细的步骤解说。
2021-10-17 23:39:36 21KB 十字链表 三元组 稀疏矩阵
1
十字链表实现稀疏矩阵加法运算、稀疏矩阵减法运算、稀疏矩阵乘法运算
1
Python 十字链表法实现的AOI
2021-06-04 09:03:27 9KB python AOI 十字链表
1
数据结构稀疏矩阵实验课程设计 /********function definition********/ int init_matrix(crosslist &one) {//initialization one.row_size=0; one.colum_size=0; one.non_zero_amount=0; one.rhead=NULL; one.chead=NULL; return OK; }//init_matrix int creat_matrix(crosslist &one) {//assignment int i;//as count in the loop element news,temp; /*input row size ,colum size and non zero amount*/ printf("Input the row size of the matrix:"); scanf("%d",&one.row_size); printf("Input the colum size of the matrix:"); scanf("%d",&one.colum_size); printf("Input the non zero amount of the matrix:"); scanf("%d",&one.non_zero_amount); /*allocate memory and the first memory not use*/ one.rhead=(element*)malloc(sizeof(element)*(one.row_size+1)); assert(one.rhead!=NULL);//assert have space one.chead=(element*)malloc(sizeof(element)*(one.colum_size+1)); assert(one.chead!=NULL); /*set all the pointer to NULL*/ for(i=1;i<=one.row_size;i++) one.rhead[i]=NULL; for(i=1;i<=one.colum_size;i++) one.chead[i]=NULL; printf("/**************************************/\n"); /*assignment*/ for(i=1;irow); }while(news->row>one.row_size);
1