#include
#include
#define status int
#define overflow -1
#define error -2
#define ok 1
typedef
struct
term, elemtype;
typedef
struct lnode
*linklist;
typedef linklist polynomial;
//1.初始化
status initpolyn
(polynomial &p)
p->next =
null
;return ok;
}//2.銷毀鍊錶
status destorypolyn
(polynomial &p)
return ok;
}status clearpolyn
(polynomial &p)
return ok;
}//3.判斷鍊錶是否為空
bool polynempty
(polynomial p)
else
}//4.求鍊錶的長度
status polynlength
(polynomial p)
return j;
}//5.返回指定元素的係數和冪
status getelem
(polynomial p,
int i,
float
&co,
int&ex)
int j =0;
polynomial p = p;
while
(p&&jif(p&&j==i)
else
}//6.比較函式
status compare
(int a,
int b)
*/if
(a==b)
return0;
}//7.計算元素位置
status locateelem
(polynomial p,
int ex,
bool
(*compare)
(int
,int))
p = p->next;
}return0;
}//8.判斷元素是否存在
bool locateelem
(polynomial l, polynomial t, polynomial &q)
else
if(t->data.expn==p1->data.expn)
else}if
(!p1)
}//9.插入元素
status polyninsert
(polynomial &p,
int i,
float co,
int ex)
if(p && j == i-1)
s->data.coef = co;
s->data.expn = ex;
return ok;
}else
}//10.刪除元素
status polyndelete
(polynomial &p,
int i,
float
&co,
int&ex)
if(p && j==i-1)
return error;
}//11.合併一元多項式中冪相同的項
void
unionpolyn
(polynomial &p)
for(
int j = i +
1; j <
polynlength
(p)+
1; j++
)else
if(ex2 == ex1)}}
}//12.建立鍊錶
void
createpolyn
(polynomial &p)
}//13.比較函式
status cmp
(polynomial qa, polynomial qb)
else
if(qa->data.expn == qb->data.expn)
else
}//14.計算加法
void
addpolyn
(polynomial &pa, polynomial &pb)
else
break
;case-1
: qc->next = qa;
qc = qa;
qa = qa->next;
break
;default
:break;}
} qc->next = qa ? qa : qb;
free
(pb)
;}
資料結構 一元多項式
void initlist polynode l 初始化多項式單鏈表 int getlength polynode l 求多項式單鏈表的長度 polynode getelem polynode l,int i 返回多項式單鏈表中第i個結點的指標 polynode locate polynode l,...
資料結構 一元多項式相加
一元多項式相加 include include struct node typedef struct node polynomial 建立帶有表頭的鍊錶 poly用於儲存係數和指數 polynomial createpoly int poly,int len return head 銷毀鍊錶 voi...
資料結構 一元多項式加法
7 17 一元多項式的加法 20 分 設計程式求兩個一元多項式的和。輸入分2行,每行分別先給出多項式非零項的個數,再以指數遞降方式輸入乙個多項式非零項係數和指數。數字間以空格分隔。輸出1行,以指數遞降方式輸出和多項式非零項的係數和指數 保證不超過整數的表示範圍 數字間以空格分隔,但結尾不能有多餘空格...