数据结构习题及答案

源代码在线查看: 5.26.c

软件大小: 52 K
上传用户: GUAIGUAICHENGTI
关键词: 数据结构
下载地址: 免注册下载 普通下载 VIP

相关代码

				5.26③  试编写一个以三元组形式输出用十字链表
				表示的稀疏矩阵中非零元素及其下标的算法。
				
				要求实现以下函数:
				void OutCSM(CrossList M, void(*Out3)(int, int, int));
				/* 用函数Out3,依次以三元组格式输出十字链表表示的矩阵 */
				
				稀疏矩阵的十字链表存储表示:
				typedef struct OLNode {
				  int i,j; // 该非零元的行和列下标
				  ElemType e; // 非零元素值
				  OLNode *right,*down; // 该非零元所在行表和列表的后继链域
				}OLNode, *OLink;
				
				typedef struct {
				  OLink *rhead,*chead; // 行和列链表头指针向量基址
				  int mu,nu,tu; // 稀疏矩阵的行数、列数和非零元个数
				}CrossList;
				void OutCSM(CrossList M, void(*Out3)(int, int, int))
				/* 用函数Out3,依次以三元组格式输出十字链表表示的矩阵 */
				{  
				  struct OLNode *p;
				  int i;
				  for(i=1;i				  {
				    if(M.rhead[i])
				      for(p=M.rhead[i];p;p=p->right)
				        Out3(p->i,p->j,p->e);
				  }
				}
				
							

相关资源