C++稀疏多项式相加
开通优快云快1年了,第一次尝试写博客。第一次就写数据结构中单链表的应用——二个稀疏多项式的加(减法同理,把加号改成减号就可以了)。
该程序除了有二个稀疏多项式相加的功能,同时也有单链表的创建、显示功能。话不多说,直接上程序。
设二个链表的长度分别为m和n,那么时间复杂度就是O(m+n)。
头文件:
#include <iostream>
using namespace std;
//计算稀疏多项式的和
class ListNode //定义一个结点类
{
public:
int m_key;//用来计算x前面的系数
int index;//用来记未知数x的系数
ListNode* next;//指向下一结点的指针
};
class List //定义一个链表类
{
public:
List();//构造函数初始化
~List();//析构函数
void creatlist();//新建链表
void show();//显示链表
ListNode * getheadptr();//用来获取私有的结点指针
private:
ListNode *head;