鍊錶多項式求和

2021-06-09 23:48:48 字數 1091 閱讀 3014

雖然很簡單,但是還是花了我2個多小時才完成,哎.........................

/*對於兩個一元多項式所有指數相同的項,對應係數相加

若其和不為零,則作為和多項式的一項插入到和多項式鍊錶中去

如指數不相同,則將指數數值較小的插入到和多項式鍊錶中去

注意:多項式鍊錶中的節點不需生成,而應該從兩個多項式鍊錶中摘取*/

#include

using namespace std;

//******************多項式結構體*****************

typedef struct pnode

pnode;

//******************初始化煉表表頭**************

void initlink(pnode* &l)

//******************多項式鍊錶的建立*************

/*演算法思想: 首先初始化乙個空鍊錶用來表示多項式,然後逐個輸入各項

通過比較,找到第乙個大於此項指數的項,把此項插入到第乙個大於

此項的前面,這樣保證多項式鍊錶的有序性

*/void creatlinklist(pnode* l)

s->next = p;

pre->next = s;

numsitems++;

s = new pnode;

cout<<"第"<}

}//******************列印多項式鍊錶****************

void printlink(pnode* l)

}//******************兩表求和**********************

void addlinklist(pnode* l1,pnode* l2)

else

}else

if(p1->coef < p2->coef)

else

}p3->next = p1 ?p1:p2;

delete l2;

}//******************主函式************************

int main()

多項式求和 鍊錶

此題有乙個坑,就是因為數太大會超時,但試幾組資料就會發現,當它到一定的數時,結果就不變了,可以縮小計算範圍 多項式求和 time limit 1000ms memory limit 65536k 多項式描述如下 1 1 2 1 3 1 4 1 5 1 6 先請你求出多項式前n項的和。第一行輸入乙個數...

多項式求和

多項式的描述如下 1 1 2 1 3 1 4 1 5 1 6 現在請你求出該多項式的前n項的和。輸入資料由2行組成,首先是乙個正整數m m 100 表示測試例項的個數,第二行包含m個正整數,對於每乙個整數 不妨設為n,n 1000 求該多項式的前n項的和。對於每個測試例項n,要求輸出多項式前n項的和...

多項式求和

time limit 1000ms memory limit 65536k 有疑問?點這裡 多項式描述如下 1 1 2 1 3 1 4 1 5 1 6 先請你求出多項式前n項的和。第一行輸入乙個數t代表測試資料個數 t 1000 接下來t行每行1個數代表n 0 n 2 31 對於每個輸入樣例,輸出多...