#ifndef polynomialcompute_poly_h
#define polynomialcompute_poly_h
struct polynode;
typedef struct polynode *polynomial;
void attach(int c, int e, polynomial *prear);
polynomial polyadd(polynomial p1, polynomial p2);
polynomial polymult(polynomial p1, polynomial p2);
polynomial readpoly();
void printpoly(polynomial p);
#endif //polynomialcompute_poly_h
#include "poly.h"
#include #include #include struct polynode ;
// 新增乙個節點
void attach(int c, int e, polynomial *prear)
int compare(int lhs, int rhs)
// 加法操作
polynomial polyadd(polynomial p1, polynomial p2)
}// 將未處理完的另乙個多項式的所有節點依次複製到結果多項式中去
for(; p1; p1 = p1->link) attach(p1->coef, p1->expon, &rear);
for(; p2; p2 = p2->link) attach(p2->coef, p2->expon, &rear);
rear->link = null;
temp = front;
front = front->link; // 令 front 指向結果多項式的第乙個非零項
free(temp); // 釋放臨時空表頭節點
return front;
}// 多項式的乘法
polynomial polymult(polynomial p1, polynomial p2)
} else
t2 = t2->link; // 指標往後移動
}t1 = t1->link;
}t2 = p;
p = p->link;
free(t2); // 釋放第乙個沒有儲存資料得節點
return p;
}// 輸出多項式
void printpoly(polynomial p)
while (p)
printf("\n");
}// 讀入多項式
polynomial readpoly()
t = p;
p = p->link;
free(t); // 刪除臨時生成頭節點(因為裡面也沒儲存資料)
return p;
}
#include "poly.h"
// 測試函式
int main()
測試樣例輸出:
多項式加法和乘法(鍊錶實現)
資料結構樹上的 練習留著以後複習 polynomial.h include using namespace std struct pnode pnode int d,int c,pnode n null class polynomial polynomial int d,int c bool ins...
鍊錶實現的多項式加法與乘法
img public class node public node int a,int i public node public int geta public int geti public void seta int a public void seti int i 多項式類 單鏈表實現 pub...
鍊錶應用 多項式加法 乘法
鍊錶學習 多項式應用 通過引入insertpoly函式來完成加法乘法操作 以及類似功能的creat 函式,使我的多項式按照指數下降的方式插入節點 而不需要在輸入時人為的控制 include using namespace std 多項式adt鍊錶實現的型別宣告 typedef struct node...