用单链表ha 存储多项式a(x )=a0+a1x1+a2x2+…+anxn(其中ai为非零系数),用单链表hb 存储多项式b(x )=b0+b1x1+b2x2+…+bmxm(其中bj为非零系数),要求计算c(x )= a(x )+b(x ),结果存到单链表hc中。试写出程序。
时间: 2023-04-20 07:01:51 浏览: 105
这里是AI语言模型,以下是程序示例:
struct Node {
int coef; // 系数
int exp; // 指数
Node* next; // 指向下一个节点的指针
};
Node* addPolynomial(Node* ha, Node* hb) {
Node* hc = new Node(); // 创建一个新链表
Node* pa = ha->next; // 指向a的第一个节点
Node* pb = hb->next; // 指向b的第一个节点
Node* pc = hc; // 指向c的第一个节点
while (pa && pb) { // 当a和b都不为空时
if (pa->exp == pb->exp) { // 如果指数相同
int sum = pa->coef + pb->coef;
if (sum != ) { // 如果系数和不为
Node* node = new Node();
node->coef = sum;
node->exp = pa->exp;
pc->next = node;
pc = pc->next;
}
pa = pa->next;
pb = pb->next;
} else if (pa->exp > pb->exp) { // 如果a的指数大于b的指数
Node* node = new Node();
node->coef = pa->coef;
node->exp = pa->exp;
pc->next = node;
pc = pc->next;
pa = pa->next;
} else { // 如果b的指数大于a的指数
Node* node = new Node();
node->coef = pb->coef;
node->exp = pb->exp;
pc->next = node;
pc = pc->next;
pb = pb->next;
}
}
while (pa) { // 如果a还有剩余节点
Node* node = new Node();
node->coef = pa->coef;
node->exp = pa->exp;
pc->next = node;
pc = pc->next;
pa = pa->next;
}
while (pb) { // 如果b还有剩余节点
Node* node = new Node();
node->coef = pb->coef;
node->exp = pb->exp;
pc->next = node;
pc = pc->next;
pb = pb->next;
}
return hc;
}
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)