typedef struct
{
int Matrix; //係數
int Order; //階
}Item; //多項式的項
typedef struct
{
Item item[MAXSIZE];
int length; //多項式長度
}Polynomial;
Polynomial Add(Polynomial AH, Polynomial BH) //普通的合併
{
Polynomial CH;
initPolynomial(CH);
int i = 0, j = 0, k = 0;
while (i < AH.length && j < BH.length)
{
if (AH.item[i].Order == BH.item[j].Order)
{
CH.item[k].Order = AH.item[i].Order;
CH.item[k].Matrix = AH.item[i].Matrix + BH.item[j].Matrix;
CH.length++;
i++; j++; k++;
}
else if (AH.item[i].Order > BH.item[j].Order)
{
CH.item[k] = AH.item[i];
CH.length++;
i++; k++;
}
else
{
CH.item[k] = BH.item[j];
CH.length++;
j++; k++;
}
}
for (i; i < AH.length; i++)
{
CH.item[k] = AH.item[i];
CH.length++;
}
for (j; j < BH.length; j++)
{
CH.item[k] = BH.item[j];
CH.length++;
}
return CH;
}
數據結構多項式加法
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.