我正在编写一个程序,用于将多项式表示为链表。就多项式而言,我了解大部分如何编写代码,但是,我很难理解如何实现函数"degree()"以返回函数中的最高幂。
例如3x^2+4x+5
该函数应返回"2"。
谢谢!
多项式由
一个或多个项组成。
项具有基变量、指数和系数。
3 x ^2
| | |
| | +-- Exponent
| |
| +---- base
|
+------ Coefficient
在表示项时,基数不是必需的;因此只需要对系数和指数。
让我们将一个术语实现为一个类:
class Term
{
public:
signed int coefficient;
signed int exponent;
};
让项的符号用系数字段的符号表示。
多项式现在变成了Term
的容器:
typedef std::vector<Term> Polynomial;
现在,查找具有最大指数的术语涉及遍历容器,查看exponent
字段。
输入多项式留作 OP 的练习。
提示:在互联网上搜索"C ++多项式"以获取示例。