僅表示非零項
陣列:程式設計簡單、除錯容易
需要實現確定陣列大小
鍊錶:動態性強
程式設計略為複雜、除錯比較困難
一種比較好的實現方法是:動態陣列
資料結構設計
typedef
struct polynode *polynomial;
struct polynode
需要設計的函式
讀乙個多項式
兩多項式相乘
兩多項式相加
多項式輸出
int
main()
…… return p;
}
rear初值是多少?
兩種處理方法:
1.rear初值為null
在attach函式中根據rear是否為null做不同處理
2.rear指向乙個空結點
void
attach
(int c,
int e,polynomial *prear)
//prear是指標的指標
polynomial readpoly()
t = p;
p = p->link;
free
(t);
return p;
}
如何將兩個多項式相加polynomial add
(polynomial p1,polynomial p2)
else
if(t1->expon>t2->expon)
else
}while
(t1)
while
(t2)
…… return p;
}
如何將兩個多項式相乘
方法1.將乘法運算轉換為加法運算
將p1當前項(ci,ei)乘p2多項式,再加到結果多項式裡
t1 = p1;
t2 = p2;
p =(polynomial)
malloc
(sizeof
(struct polynode));
p->link =
null
;rear = p;
while
(t2)
方法2.逐項插入
將p1當前項(c1i,e1i)乘p2當前項(c2i,e2i),並插入到結果多項式中,關鍵是要找到插入位置。
初始結果多項式可由p1第一項乘p2獲得
如何將多項式輸出
void
printpoly
( polynomial p )
while
(p)printf
("\n");
}
資料結構(二)筆記
僅表示非零項 陣列 程式設計簡單 除錯容易 需要實現確定陣列大小 鍊錶 動態性強 程式設計略為複雜 除錯比較困難 一種比較好的實現方法是 動態陣列 資料結構設計typedef struct polynode polynomial struct polynode需要設計的函式 讀乙個多項式 兩多項式相...
理解矩陣 二 筆記
僅記錄學習孟巖老師的 blog 時的收穫,孟巖老師的原文章見 初等數學是研究常量的數學,是研究靜態的數學,高等數學是變數的數學,是研究運動的數學。重溫微積分 齊民友教授 運動 連續過程,逐點經過。躍遷 不需要逐點經過,瞬間發生的行為。矩陣是線性空間裡躍遷的描述。矩陣是線性空間裡變換的描述。變換 空間...
python雜記 二(筆記)
進行分片的時候,分片的開始和結束點需要進行指定 不管是直接還是間接 而另外乙個引數 在python 2.3 加入到內建型別 步長 step length 通常都是隱式設定的。在普通的分片中,步長是1 分片操作就是按照這個步長逐個遍歷序列的元素,然後返回開始和結束點之間的所有元素。numbers 0 ...