資料結構多項式表示法羃次表示方式疑問
以下是網路上擷取的內容
使用陣列 Polynomial 存放多項式 cnX^n+ cn-1X^n-1 +… + c1X^1 + c0X0,
Polynomial[] ={n, cn, cn-1, …, c1, c0},其中 n 為最高羃次,cn、cn-1、…、c1、c0 為係數,
以 8X^4 - 6X^2 + 3X^5 + 5 為例,我們先依照羃次由高至低排列寫出
3X^5 + 8X^4 +0X^3 - 6X^2 + 0X^1 + 5X^0
,於是得到 Polynomial[] = {5, 3, 8, 0, -6, 0, 5}
這是參考網址http://epaper.gotop.com.tw/pdf/AEE030000.pdf
2-18頁
其他參考書的例題
p=8X^5+6X^4+3X^2+12
ans:p=(5, 8, 6, 0, 3, 0, 12)
p=3X^3 + 6X + 4
ans:p=(3 , 0 , 6 , 4)
我不懂 8X^4 - 6X^2 + 3X^5 + 5可寫成3X^5 + 8X^4 +0X^3 - 6X^2 + 0X^1 + 5X^0
,於是得到 Polynomial[] = {5, 3, 8 , 0 , -6 , 0 , 5}
位置:6 5 4 3 2 1 0
位置6的數值是來自3X^5的^5嗎??位置5的3是來自3X^5的3嗎??
位置4式的數值是8X^4的8嗎??位置3是為什麼位置3會是0??而不是4呢??
2 個解答
- 6 年前最佳解答
你看清楚定義...
多項式 cnX^n+ cn-1X^n-1 +… + c1X^1 + c0X0,
Polynomial[] ={n, cn, cn-1, …, c1, c0}
n表示最高次數而不是係數. 看冪次最容易的方法就是從後面看回來. 除了第一項表示的是次數之外, 其他表示的皆是係數.
你題的問題
8X^4 - 6X^2 + 3X^5 + 5 可寫成 3X^5 + 8X^4 +0X^3 - 6X^2 + 0X^1 + 5X^0,於是得到 Polynomial[] = {5, 3, 8 , 0 , -6 , 0 , 5}.
按照定義來看分別1-6項分別是 "3" X^5 + "8" X^4 + "0" X^3 - "6" X^2 + "0" X^1 + "5" X^0, 所以是 [3, 8, 0, -6, 0, 5]; 再加上第0項的最高次數, 結果就是 [5, 3, 8, 0, -5, 0, 5].
位置3為什麼會是0而不是4? 因為你的位置是從0到6而不是1到7.