数据结构习题及答案

源代码在线查看: 2.41.c

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

相关代码

				◆2.41②  试以循环链表作稀疏多项式的存储结构,
				编写求其导函数的算法,要求利用原多项式中的结
				点空间存放其导函数(多项式),同时释放所有无
				用(被删)结点。
				
				实现下列函数:
				void Difference(LinkedPoly &pa);
				/* 稀疏多项式 pa 以循环链表作存储结构,     */
				/* 将此链表修改成它的导函数,并释放无用结点 */
				
				链式多项式的类型定义:
				typedef struct PolyNode {
				    int  coef;
				    int  exp;
				    struct PolyNode *next;
				} PolyNode, *PolyLink;  // 多项式元素(项)结点类型
				
				typedef PolyLink LinkedPoly; // 链式多项式
				void Difference(LinkedPoly &pa)
				/* 稀疏多项式 pa 以循环链表作存储结构,     */
				/* 将此链表修改成它的导函数,并释放无用结点 */
				{ LinkedPoly p;
				  p=pa->next;
				  if(!p->exp)
				  {
				    pa->next=p->next;p=p->next;   //常数项处理
				  }
				  while(p!=pa)
				  {
				    p->coef*=p->exp--;//对每一项求导
				    p=p->next;
				  }
				
				}
				
							

相关资源