習題3 6 用鍊錶求多項式的加法

2022-05-16 20:00:32 字數 890 閱讀 8057

/*

3.6

*/struct

node;

typedef

struct node *ptrtonode;

typedef ptrtonode position;

typedef ptrtonode list;

struct

node

;position

createlist(

void

)

return

head;

}position

makeempty()

void

insert( position p,

int coe1, int

exp1 )

/*assume a header

*/void

printlist( list l )

}position

polyadd(

void

)

else

if( l1pos->exp < l2pos->exp )

else

lrespos =next( lres, lrespos );

}while( l1pos !=null )

while( l2pos !=null )

printlist(lres);

}

view code

思路同3.5,將次數低的結點insert進lres,如果有相等的,就把係數加起來,insert乙個結點

當然可能l1或是l2還有些結點由於次數偏高沒遍歷到,所以繼續補充

這裡隨時增加結點的方式是insert,結點增加後記得,更新lres的末位址,才能達到隨時增加結點效果

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

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

多項式加法運算鍊錶實現

struct polynode typedef struct polynode polynomial polynomial p1,p2 polynomial polyadd polynomial p1,polynomial p2 多項式加法鍊錶實現 當while退出時,p1 p2有乙個為空。將未處理...

鍊錶應用 多項式加法 乘法

鍊錶學習 多項式應用 通過引入insertpoly函式來完成加法乘法操作 以及類似功能的creat 函式,使我的多項式按照指數下降的方式插入節點 而不需要在輸入時人為的控制 include using namespace std 多項式adt鍊錶實現的型別宣告 typedef struct node...