📄 expression.cpp
字号:
#include <iostream.h>
#include "Expression.h"
Expression::Expression(int coef[], int exp[], int n)
{
first = new Node;
pre = first;
Node *p = first;
for (int i = 0; i < n; i++)
{
Node *tmp = new Node;
tmp->coef = coef[i];
tmp->exp = exp[i];
p->next = tmp;
p = p->next;
}
p->next = NULL;
this->p = first->next;
}
Expression::~Expression()
{
Node *pt = first->next;
Node *tmp;
while (pt)
{
tmp = pt;
pt = pt->next;
delete tmp;
}
}
void Expression::InsertBefore(Node *q)
{
q->next = p;
pre->next = q;
pre = pre->next;
}
void Expression::InsertExpression(Node *q, Node *qPre)
{
pre->next = q;
qPre->next = NULL;
}
void Expression::Delete()
{
Node *tmp = p;
pre->next = p->next;
delete tmp;
p = pre->next;
}
void Expression::Merge(int coef)
{
p->coef = p->coef + coef;
}
void Expression::MoveNext()
{
pre = pre->next;
p = p->next;
}
void Expression::Print() const
{
cout << "指数域:";
Node *p = first->next;
while (p)
{
cout << p->exp << " ";
p = p->next;
}
cout << endl;
cout << "系数域:";
p = first->next;
while (p)
{
cout << p->coef << " ";
p = p->next;
}
cout << endl;
}
Node *Expression::GetCurrentPreNode() const
{
return pre;
}
Node *Expression::GetCurrentNode() const
{
return p;
}
bool Expression::End() const
{
if (p == NULL)
return true;
else
return false;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -