baidu_28495261 2015-05-26 04:45 采纳率: 0%
浏览 2542

c++一元多项式求和问题求大神解答

#ifndef LINKLIST_H
#define LINKLIST_H
struct elem
{
int data;
int exp;
elem* next;
};
class LinkList
{
public:
LinkList();
LinkList(int a[][2],int n);
~LinkList();
void PrintList();
friend void Add(LinkList &A,LinkList &B);
private:
elem * first;
};
#endif

#include
#include"LinkList.h"
using namespace std;
LinkList::LinkList()
{
first=new elem;
first->next=NULL;
}
LinkList::LinkList(int a[][2],int n) //尾插法建立单链表
{
first=new elem;
elem*r=first;
for(int i=0;i {
elem*s=new elem;
s->data=a[i][0];
s->exp=a[i][1];
r->next=s;
r=s;
}
r->next=NULL;
}
LinkList::~LinkList()
{
while(first!=NULL)
{
elem *q=first;

first=first->next;

delete q;
}
}
void LinkList::PrintList()
{
elem*p=first->next;
while(p!=NULL)
{
cout<data<<"*X^"<exp<<"+";
p=p->next;
}
}

#include
#include "LinkList.h"
using namespace std;
void Add(LinkList &A,LinkList &B);
void main()
{
int a[][2]={{2,4},{3,5},{4,8}};
int b[][2]={{8,1},{7,2},{3,4},{5,8}};
LinkList A(a,3);
cout<<"多项式A为:"< A.PrintList();
cout LinkList B(b,4);
cout B.PrintList();
cout cout try{
Add(A,B);
}
catch(char *wrong)
{
cout }
}
void Add(LinkList &A,LinkList &B)
{
elem*pre=A.first;elem*p=pre->next;
elem*qre=B.first;elem*q=qre->next;
while(p!=NULL&&q!=NULL)
{
if(p->expexp) //p的指数小于q的指数
{
pre=p;
p=p->next;
}
else if(p->exp>q->exp)//p的指数大于q的指数
{
elem*v=q->next;
pre->next=q;
q->next=p;
q=v;
}
else //指数相等
{
p->data=p->data+q->data;
if(p->data==0) //如果相加后p的系数为0
{
pre->next=p->next;
delete p;
p=p->next;
}
else
{
pre=p;
p=pre->next;
}
qre->next=q->next;
delete q;
q=qre->next;
}
}
if(q!=NULL)
pre->next;
delete B.first; //释放第二个单链表头结点所占的内存;
A.PrintList();
}

  • 写回答

3条回答

  • monaso 2015-05-26 04:59
    关注

    你要表达什么意思???是看不懂还是出错了???

    评论

报告相同问题?

悬赏问题

  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛