⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 2.41.c

📁 数据结构习题及答案
💻 C
字号:
◆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;
  }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -