#include
using namespace std;
struct term
{
\x09float xishu; //系數(shù)
\x09int zhishu; //指數(shù)
};
struct LNode
{
\x09term data; //term多項(xiàng)式值
\x09struct LNode *next;
};
typedef LNode* polynomail;
/*合并同類項(xiàng)*/
polynomail hebing(polynomail Head)
{
\x09polynomail r,q,p,Q;
\x09for(q=Head->next;q!=NULL;q=q->next)//合并同類項(xiàng)
\x09\x09\x09for(p=q->next,r=q;p!=NULL;)
\x09\x09\x09\x09if(q->data.zhishu==p->data.zhishu)
\x09\x09\x09\x09{
\x09\x09\x09\x09\x09q->data.xishu=q->data.xishu+p->data.xishu;
\x09\x09\x09\x09\x09r->next=p->next;
\x09\x09\x09\x09\x09Q=p;p=p->next;
\x09\x09\x09\x09\x09delete Q;
\x09\x09\x09\x09}
\x09\x09\x09\x09else
\x09\x09\x09\x09{
\x09\x09\x09\x09\x09r=r->next;
\x09\x09\x09\x09\x09p=p->next;
\x09\x09\x09\x09}
\x09return Head;
}
/*又小到大排列*/
void arrange1(polynomail pa)
{
\x09polynomail h=pa,p,q,r;
\x09for(p=pa;p->next!=NULL;p=p->next);r=p;
\x09while(h->next!=r)//大的沉底
\x09{
\x09\x09for(p=h;p->next!=r&&p!=r;p=p->next)
\x09\x09\x09if(p->next->data.zhishu>p->next->next->data.zhishu)
\x09\x09\x09{
\x09\x09\x09\x09q=p->next->next;
\x09\x09\x09\x09p->next->next=q->next;
\x09\x09\x09\x09q->next=p->next;
\x09\x09\x09\x09p->next=q;
\x09\x09\x09}
\x09\x09\x09r=p;//r指向參與比較的最后一個(gè),不斷向前移動(dòng)
\x09}
}
/*由大到小排序*/
void arrange2(polynomail pa)
{
\x09polynomail h=pa,p,q,r;
\x09for(p=pa;p->next!=NULL;p=p->next); r=p;
\x09while(h->next!=r)//小的沉底
\x09{
\x09\x09for(p=h;p->next!=r&&p!=r;p=p->next)
\x09\x09\x09if(p->next->data.zhishunext->next->data.zhishu)
\x09\x09\x09{
\x09\x09\x09\x09q=p->next->next;
\x09\x09\x09\x09p->next->next=q->next;
\x09\x09\x09\x09q->next=p->next;
\x09\x09\x09\x09p->next=q;
\x09\x09\x09}
\x09\x09\x09r=p;//r指向參與比較的最后一個(gè),不斷向前移動(dòng)
\x09}
}
bool judge(polynomail Head)
{
\x09arrange2(Head);
\x09polynomail p;
\x09p=Head->next;
\x09bool xi=false;
\x09while(p!=NULL&&p->next!=NULL&&!xi)
\x09{
\x09\x09if(p->data.zhishu-p->next->data.zhishu>1)
\x09\x09\x09xi=true;
\x09\x09p=p->next;
\x09}
\x09return xi;
}
/*打印多項(xiàng)式,求項(xiàng)數(shù)*/
void printpolyn(polynomail P)
{
\x09int i;
\x09polynomail q;
\x09if(P==NULL)
\x09\x09coutdata.zhishu;
\x09\x09r->next=s; r=s;
\x09\x09p=p->next;
\x09}
\x09while(q)
\x09{
\x09\x09s=new LNode;
\x09\x09s->data.xishu=q->data.xishu;
\x09\x09s->data.zhishu=q->data.zhishu;
\x09\x09r->next=s; r=s;
\x09\x09q=q->next;
\x09}
\x09r->next=NULL;
\x09if(newHead->next!=NULL&&newHead->next->next!=NULL)//合并同類項(xiàng)
\x09\x09newHead=hebing(newHead);
\x09coutnext;
\x09newHead=new LNode;
\x09r=newHead;
\x09while(p)
\x09{
\x09\x09s=new LNode;
\x09\x09s->data.xishu=p->data.xishu;
\x09\x09s->data.zhishu=p->data.zhishu;
\x09\x09r->next=s; r=s;
\x09\x09p=p->next;
\x09}
\x09while(q)
\x09{
\x09\x09s=new LNode;
\x09\x09s->data.xishu=-q->data.xishu;
\x09\x09s->data.zhishu=q->data.zhishu;
\x09\x09r->next=s; r=s;
q=q->next;
\x09}
\x09r->next=NULL;
if(newHead->next!=NULL&&newHead->next->next!=NULL)//合并同類項(xiàng)
\x09\x09newHead=hebing(newHead);
\x09coutnext)
\x09\x09for(q=pb->next;q!=NULL;q=q->next)
\x09\x09{
\x09\x09\x09s=new LNode;
\x09\x09\x09s->data.xishu=p->data.xishu*q->data.xishu;
\x09\x09\x09s->data.zhishu=p->data.zhishu+q->data.zhishu;
\x09\x09\x09r->next=s;
\x09\x09\x09r=s;
\x09\x09}
\x09\x09r->next=NULL;
\x09\x09coutnext->next!=NULL)//合并同類項(xiàng)
\x09\x09\x09newHead=hebing(newHead);
\x09\x09return newHead;
}
/*5、銷毀已建立的兩個(gè)多項(xiàng)式*/
void delpolyn(polynomail pa,polynomail pb)
{
\x09polynomail p,q;
\x09p=pa;
\x09while(p!=NULL)
\x09{
\x09\x09q=p;
\x09\x09p=p->next;
\x09\x09free(q);
\x09}
\x09p=pb;
\x09while(p!=NULL)
\x09{
\x09\x09q=p;
\x09\x09p=p->next;
\x09\x09free(q);
\x09}
\x09cout
順序結(jié)構(gòu)、動(dòng)態(tài)鏈表結(jié)構(gòu)下的一元多項(xiàng)式的加法、減法、乘法的實(shí)現(xiàn) ,
順序結(jié)構(gòu)、動(dòng)態(tài)鏈表結(jié)構(gòu)下的一元多項(xiàng)式的加法、減法、乘法的實(shí)現(xiàn) ,
順序結(jié)構(gòu)、動(dòng)態(tài)鏈表結(jié)構(gòu)下的一元多項(xiàng)式的加法、減法、乘法的實(shí)現(xiàn)
二、\x05主要內(nèi)容
設(shè)有一元多項(xiàng)式Am(x)和Bn(x).
Am(x)=A0+A1x1+A2x2+A3x3+… +Amxm
Bn(x)=B0+B1x1+B2x2+B3x3+… +Bnxn
請(qǐng)實(shí)現(xiàn)求M(x)= Am(x)+Bn(x)、M(x)= Am(x)-Bn(x)和M(x)= Am(x)×Bn(x).實(shí)現(xiàn)多項(xiàng)式的加、減、乘.
三、具體要求及應(yīng)提交的材料
首先判定多項(xiàng)式是否稀疏
分別采用順序和動(dòng)態(tài)存儲(chǔ)結(jié)構(gòu)實(shí)現(xiàn);
結(jié)果M(x)中無重復(fù)階項(xiàng)和無零系數(shù)項(xiàng);
要求輸出結(jié)果的升冪和降冪兩種排列情況
用C/C++語言編程實(shí)現(xiàn)上述內(nèi)容,對(duì)每個(gè)問題寫出一個(gè)算法實(shí)現(xiàn)
說錯(cuò)了,只能c++哈,盡量詳細(xì)哈,多給注釋哈!
順序結(jié)構(gòu)、動(dòng)態(tài)鏈表結(jié)構(gòu)下的一元多項(xiàng)式的加法、減法、乘法的實(shí)現(xiàn)
二、\x05主要內(nèi)容
設(shè)有一元多項(xiàng)式Am(x)和Bn(x).
Am(x)=A0+A1x1+A2x2+A3x3+… +Amxm
Bn(x)=B0+B1x1+B2x2+B3x3+… +Bnxn
請(qǐng)實(shí)現(xiàn)求M(x)= Am(x)+Bn(x)、M(x)= Am(x)-Bn(x)和M(x)= Am(x)×Bn(x).實(shí)現(xiàn)多項(xiàng)式的加、減、乘.
三、具體要求及應(yīng)提交的材料
首先判定多項(xiàng)式是否稀疏
分別采用順序和動(dòng)態(tài)存儲(chǔ)結(jié)構(gòu)實(shí)現(xiàn);
結(jié)果M(x)中無重復(fù)階項(xiàng)和無零系數(shù)項(xiàng);
要求輸出結(jié)果的升冪和降冪兩種排列情況
用C/C++語言編程實(shí)現(xiàn)上述內(nèi)容,對(duì)每個(gè)問題寫出一個(gè)算法實(shí)現(xiàn)
說錯(cuò)了,只能c++哈,盡量詳細(xì)哈,多給注釋哈!
其他人氣:621 ℃時(shí)間:2020-05-08 01:09:10
優(yōu)質(zhì)解答
我來回答
類似推薦
- 一元多項(xiàng)式的加法減法乘法
- 一元多項(xiàng)式的運(yùn)算 程序功能簡(jiǎn)介:一元多項(xiàng)式的加法、減法和乘法的實(shí)現(xiàn),已知如下兩個(gè)多項(xiàng)式
- 線性代數(shù)問題“全體n次實(shí)系數(shù)多項(xiàng)式(n>=1),對(duì)多項(xiàng)式的加法和數(shù)量乘法,是否構(gòu)成數(shù)域上的線性空間?”
- 把1-8這8個(gè)數(shù)字分別填在下列的( ),使圖中的四邊正好組成加法,減法,乘法,除法四個(gè)算式.
- 0 1 2 3 4 5 6 7 8 9 這幾個(gè)數(shù)字組成個(gè)加法 減法 乘法的三個(gè)公式 在公式里就用這幾個(gè)字 其中一個(gè)公式的得
- 計(jì)算:(1)(2x²-3x+1)(2x²+3x-1) (2)(a-2b+3c)²
- ok.This cup of tea is for you.
- 在一個(gè)比例中,兩個(gè)內(nèi)項(xiàng)的積是最小的質(zhì)數(shù),已知一個(gè)外項(xiàng)是二分之一,另一個(gè)外項(xiàng)是?
- be careful,persist,a mistake i will never repeat
- 多少天?
- stl 里面的lower bound 程序里這句:half = len >> 1 >> 表示什么?
- 請(qǐng)問The day you want away
猜你喜歡
- 1六年級(jí)上冊(cè)第八作文
- 2一個(gè)數(shù)既是36的因數(shù),又是2的倍數(shù),這樣的數(shù)是( )
- 3唐詩宋詞元曲和現(xiàn)代詩300首哪里有?
- 4已知x,y滿足x-y+5>=0,x+y>=0,x
- 5小玲沿某公路以每小時(shí)4千米速度步行上學(xué),沿途發(fā)現(xiàn)每隔9分鐘有一輛公共汽車從后面超過她,每隔7分鐘遇到一輛迎面而來的公共汽車,若汽車發(fā)車的間隔時(shí)間相同,而且汽車的速度相同,
- 615公分的灰土兩步 請(qǐng)問一步灰土 用白灰?guī)坠謣
- 7英語翻譯
- 8小剛的書是小亮的2倍,如果小剛給小亮6本書的話他們兩的書的數(shù)量就一樣多,問小剛和小亮各有幾本書?
- 9調(diào)查問卷的回收率怎么算
- 10若不等式組x-m≥o,3-2x>-1有3個(gè)整數(shù)解,m的取值范圍是
- 11There are many students playing games on the playground 改為同義句
- 12請(qǐng)問能告訴我一下每立方米瀝青混凝土,石子的用量么