STL演算法實現 多項式加法

2021-07-29 14:25:14 字數 1199 閱讀 1233

**一:

#include

#include

using namespace std;

struct point;

bool cmp(const point & a,const point & b) //公升序,降序只需要改變大於小於符號

for(int i=0;i>aa.x>>aa.z;

s2.push_back(aa);

}s1.merge(s2,cmp);  //合併s1和s2,合併到s1中

//for_each(s1.begin(),s1.end(),print1);

list::iterator iter=s1.begin();

point pp;

pp.x=(*iter).x;

pp.z=(*iter).z;

++iter;

for(;iter!=s1.end();iter++)

else

}s3.push_back(pp);

list::iterator it=s3.begin();

for(;it!=s3.end();it++)

;void print(int & e)

for(int i=0;i>aa.x>>aa.z;

s2.push_back(aa);

}s1.splice(s1.end(),s2);    

for_each(s1.begin(),s1.end(),print1);

s1.sort(cmp);

for_each(s1.begin(),s1.end(),print1);

cout<<"-----------------"<::iterator iter=s1.begin();

point pp;

pp.x=(*iter).x;

pp.z=(*iter).z;

++iter;

for(;iter!=s1.end();iter++)

else

}s3.push_back(pp);

list::iterator it=s3.begin();

for(;it!=s3.end();it++)

//兩個**差不多,功能相同,

差別只在memry庫函式和splice庫函式的區別。。memey函式會自動的對合併的鍊錶排序。。但splice可以自己想進行排序的時候再來排序,故而splice用起來更加靈活

C 實驗 STL多項式加法

分析傳統的做法 1 多項式用list容器表示,容器內的每乙個元素代表多項式中的每一項。設定多項式p1,p2,並使結果p3結果為空。2 利用sort系統函式,使多項式p1,p2中每一項按係數公升序排列。3 利用iterator技術遍歷p1,p2。當p1,p2沒有檢測完各自的鍊錶時,比較當前結點的指數域...

多項式加法

題目內容 乙個多項式可以表達為x的各次冪與係數乘積的和,比如 現在,你的程式要讀入兩個多項式,然後輸出這兩個多項式的和,也就是把對應的冪上的係數相加然後輸出。程式要處理的冪最大為100。輸入格式 總共要輸入兩個多項式,每個多項式的輸入格式如下 每行輸入兩個數字,第乙個表示冪次,第二個表示該冪次的係數...

多項式加法

題目內容 乙個多項式可以表達為x的各次冪與係數乘積的和,比如 2x6 3x5 12x3 6x 20 現在,你的程式要讀入兩個多項式,然後輸出這兩個多項式的和,也就是把對應的冪上的係數相加然後輸出。程式要處理的冪最大為100。輸入格式 總共要輸入兩個多項式,每個多項式的輸入格式如下 每行輸入兩個數字,...