稀疏多项式采用的循环链表存储结构LinkedPoly定义为typedef struct Po1yNode {PolyTerm data;struct Po1yNode *next ;} PolyNode, *PolyLink;typedef PolyLink LinkedPoly;试以循环链表作稀疏多项式的存储结构,编写求其导函数的方法,要求利用原多项式中的结点空间存放其导函数多项式,同时释放所有无用结点。
举一反三
- 稀疏多项式采用的循环链表存储结构LinkedPoly定义为typedef struct Po1yNode {PolyTerm data;struct Po1yNode *next ;} PolyNode, *PolyLink;typedef PolyLink LinkedPoly;试编写算法,将-一个用循环链表表示的稀疏多项式分解成两个多项式,使这两个多项式中各自仅含奇次项或偶次项,并要求利用原链表中的结点空间构成这两个链表。
- 试以循环链表作稀疏多项式的存储结构,编写求其导函数的算法,要求利用原多项式中的结点空间存放其导函数(多项式),同时释放所有无用(被删)结点。
- 试编写算法,将一个用循环链表表示的稀疏多项式分解成两个多项式,使这两个多项式中各自仅含奇次项或偶次项,并要求利用原链表中的结点空间构成这两个链表。
- 设计一种用单链表存储多项式的结构(每个结点存储一项的系数和指数,类型都为 int ),并编写一个产生多项式链表的函数和一个实现两个多项式相加的函数。
- 设有一个双向循环链表,每个结点中除有prior,data和 next 三个域外,还增设了一个访问频度域freq在链表被起用之前,频度域 freq的值均初始化为零,而每当对链表进行一次LOCATE (Lx)的操作后,被访问的结点(即元素值等于x的结点)中的频度域freq的值便增1,同时调整链表中结点之间的次序,使其按访问频cA度非递增的次序顺序排列,以便始终保持被频繁访问的结点总是靠近表头结点。试编写符合上述要求的 LOCATE操作的算法。在2.39至2.40题中,稀疏多项式采用的顺序存储结构SqPoly定义为typedcf struct {int coef;int exp;}PolyTerm;typedef struct {PolyTerm *data; /多项式的顺序存储结构int length;}SqPoly;