C++链表存储多项式
时间: 2023-10-03 15:04:48 浏览: 90
在C语言中,可以使用链表来存储多项式。每个节点表示多项式中的一个项,节点的结构可以定义为:
```
struct polynode {
int coef; // 系数
int exp; // 指数
polynode* link; // 链接下一个节点
};
typedef polynode* polypointer;
```
首先,需要定义链表的头节点,即指向链表的第一个节点的指针。然后,可以使用函数Attach将一个新节点链接到已有表的最后,函数定义如下:
```
void Attach(int c, int e, polypointer& d) {
polypointer x;
x = new polynode;
x->coef = c;
x->exp = e;
d->link = x;
x->link = NULL;
d = d->link;
}
```
在Attach函数中,通过创建一个新节点x,并将系数c和指数e赋值给x的成员变量。然后,将新节点x链接到已有表的最后,并更新头节点指针d,使其指向链表的最后一个节点。
通过不断调用Attach函数,可以将多项式中的每一个项添加到链表中,最终形成一个完整的链表来存储多项式。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [C++用链表储存多项式](https://download.csdn.net/download/allyxl/4748253)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [C++链表实现多项式的加减乘除](https://blog.csdn.net/czdczdczdczd/article/details/120577784)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文