利用鍊錶完成多項式操作

2021-08-01 17:16:45 字數 1527 閱讀 5227

//

#include "stdafx.h"

#include

#include

#include

using namespace std;

typedef struct lnodedata;

typedef struct newlink *ptr;//

節點包括資料和乙個指標,指標指向自身型別

typedef struct newlinklinkp,*linkpoint;

//新建單鏈表

linkpoint linklist_creat()

//插入節點

int linklist_insert(linkpoint head, datab)

p->next= head->next;//a

指向插入位置的前乙個節點

head->next= p;

return1; }

//刪除節點

int linklist_delete(linkpoint a)//

刪除節點a後面的節點

//鍊錶逆置

int linklist_reverse(linkpoint head)

head->next= headr->next;

free(headr);

return1; }

//排序(冪次從高到低)

int linklist_sort(linkpoint head)

q= q->next; }

p= p->next; }

return1; }

//求導

int linklist_qiudao(linkpoint head)

else //

最後乙個資料求導(刪除)

return1; }

while(p->next->next != null) //

前n-2個資料求導

if(p->next->d.index > 0)

else //

最後乙個資料求導(刪除)

p->d.factor*= p->d.index;

p->d.index--;//

倒數第二個資料求導

return1; }

//相加

linkpoint linklist_add(linkpoint a,linkpoint b)

q= q->next; }

returna; }

//輸出

void linklist_out(linkpoint head)

cout<< endl; }

//檔案讀取

int initial(linkpoint head,char*filename)

intnum;

datad;

f>>num;

if(num==0)

while(num>0)

return1; }

int main(int argc, char* argv)

鍊錶的多項式加法鍊錶的多項式加法

老師給的模板看的我不要不要的,真心難看,看了很久才把過載加法搞定了。include using namespace std include 定義結點類 用於表示多項式的一項 class node node int nexp,int ncoef private int exp 指數 int coef ...

鍊錶多項式求和

雖然很簡單,但是還是花了我2個多小時才完成,哎.對於兩個一元多項式所有指數相同的項,對應係數相加 若其和不為零,則作為和多項式的一項插入到和多項式鍊錶中去 如指數不相同,則將指數數值較小的插入到和多項式鍊錶中去 注意 多項式鍊錶中的節點不需生成,而應該從兩個多項式鍊錶中摘取 include usin...

多項式求和 鍊錶

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