多项式的加法我认为就是对单链表结构的一个简单的应用,只不过,在链表中,多项式的加法会根据实际情况增加了一个数据的位置,因此来实现其相加。下面是代码
1.基础函数
此处的定义相较于单链表的不同之处是,它定义了两个int变量去储存多项式的系数和项数。
typedef struct LinkNode
{
int coefficient;
int exponent;
struct LinkNode *next;
} *LinkList, *NodePtr;
2.初始化
LinkList initLinkList()
{
LinkList tempHeader = (LinkList)malloc(sizeof(struct LinkNode));
tempHeader->coefficient = 0;
tempHeader->exponent = 0;
tempHeader->next = NULL;
return tempHeader;
}
3.打印函数以及示意函数
void printList(LinkList paraHeader)
{
NodePtr p = paraHeader->next;
while (p != NULL)
{
printf("%d * 10^%d + ", p->coefficient, p->exponent);
p = p->next;
}
printf("\r\n");
}
void printNode(NodePtr paraPtr, char paraChar)
{
if (paraPtr == NULL)
{
printf("