一、算法问题描述
为了计算多个一元多项式相加,参照书上P40的式子相加,需要建立在有序链表的基础上,跟merge的算法类似。链表的基本操作就不表述了。书P39-P43
二、需要用到的数据结构
1、单链表
//=============单链表=====================
//int length_L = 0;//记录链表的长度 不包括头结点
typedef struct LNode{//结点类型
ElemType data;
struct LNode *next;//指向下一个节点的地址
}LNode, *LinkList;
typedef struct//链表类型
{
LinkList head;//结点的头
int len;
}Link;
Status InItList_L(Link &L){
//初始化线性链表 其中头结点为空
L.head = (LinkList)malloc(sizeof(LNode));
//L->data = -1;//设置头结点为空
L.head->next = NULL;
L.len = 0;
return OK;
}
Status GetElem_L(Link L, int i, ElemType &e){
//L是带头节点的单链表的头指针
//获取链表的第i个元素 返回值赋值到e元素 i[0.....n]
LinkList p = L.head->next;//这个是第一个节点
int j = 1;//当前指向的第几个结点 j[0....n]