数据结构实现两个多项式相加,代码实现
时间: 2024-10-06 11:05:46 浏览: 43
在计算机科学中,可以使用数组或链表等数据结构来表示多项式,并实现两个多项式的加法。这里我们以Python为例,假设每个多项式表示为一个列表,其中元素是元组,第一个元素是系数,第二个元素是指数。
```python
class Polynomial:
def __init__(self, coefficients=None):
if coefficients is None:
self.coefficients = []
else:
self.coefficients = [0] * len(coefficients) + coefficients
def add(self, other):
result = Polynomial()
max_len = max(len(self.coefficients), len(other.coefficients))
for i in range(max_len):
coefficient_a = self.coefficients[i] if i < len(self.coefficients) else 0
coefficient_b = other.coefficients[i] if i < len(other.coefficients) else 0
result.coefficients.append(coefficient_a + coefficient_b)
return result
# 示例
p1 = Polynomial([(2, 2), (1, 1)])
p2 = Polynomial([(1, 2), (3, 0)])
sum_poly = p1.add(p2)
```
在这个`Polynomial`类中,`__init__`方法用于初始化多项式,`add`方法则实现了两个多项式的相加。它创建一个新的多项式实例`result`,然后遍历两个输入多项式的系数,将对应位置的系数相加并添加到结果多项式的系数列表中。
阅读全文