您的位置:首页 > 其它

一条单链表可以表示一个一元多项式,每个节点包含三个域:指数、系数和后继节点(指针或引用)。

2012-12-23 03:41 3579 查看
一条单链表可以表示一个一元多项式,每个节点包含三个域:指数、系数和后继节点(指针或引用)。表示多项式3X4-6X2+5X-10的单链表如图所示。给定两个多项式,实现两个多项式相加算法。

输入:第一行输入包含两个整数m,n;后续为m行和n行数据;m,n分别代表两个多项式的项数;后续每一行代表多项式的项,包含a,b两个数据,表示该项的系数和指数。 输出:从较高指数到较低指数,依次输出求得的和。每行一项,格式与输入相同,但无需输出项数,系数为0的项也不输出。 输入样例:2 31 21 12 21 12 0输出样例:3 22 12 0  #include<iostream>
using namespace std;
struct Node{int array[10];};
int main()
{
int i,N,M,num1,num2;
cin>>N>>M;
Node pt,pr,pe;
for(i=0;i<10;i++)
{pt.array[i]=0;pr.array[i]=0;pe.array[i]=0;}
for( i=0;i<N;i++)
{ cin>>num1>>num2;
pt.array[num2]=num1;}
for( i=0;i<M;i++)
{ cin>>num1>>num2;
pr.array[num2]=num1;
}
for(i=9;i>=0;i--)
{ pe.array[i]=pt.array[i]+pr.array[i];
if(pe.array[i]!=0) cout<<pe.array[i]<<" "<<i<<endl;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐