[理工] pseudo polynomial time
版上兩篇文章看過了,但有些還是不懂、想確認
我目前理解是這樣:
0/1 knapsack problem 複雜度 O(nW)
n是物品數量(陣列有多少個‘’元素‘)
W就是一個數值(input 只會看到一個東西)
但數值跟物品數量都是人的定義,對電腦來說最後都是開了nW的二維陣列,算了nW格的東西。所以其實數值、數量對電腦程式來說沒差吧?
所以不太懂要取 m=lgW 然後說複雜度是O(n2^m) 的理由
目前我是這樣理解:
因為複雜度理論也是人定義的,所以當初我們要求的input 必須是一個可以數有多少個的東西,以此題來說,input就會真的出現n+1數字(n個價格、1個重量)
W我們沒辦法說他 size 是1,要找一個會隨著W變大而增長的東西當input size,所以取 bit 數當他的size
這邊再提一個疑問,如果我是取他有幾位數可以嗎?(取log 10為底,反正出來的是exponential)
-----
Sent from JPTT on my iPhone
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.247.233.249 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1599376538.A.02E.html
推
09/06 15:59,
5年前
, 1F
09/06 15:59, 1F
→
09/06 16:00,
5年前
, 2F
09/06 16:00, 2F
推
09/06 16:05,
5年前
, 3F
09/06 16:05, 3F
→
09/06 16:05,
5年前
, 4F
09/06 16:05, 4F
→
09/06 16:11,
5年前
, 5F
09/06 16:11, 5F
→
09/06 16:11,
5年前
, 6F
09/06 16:11, 6F
推
09/06 16:21,
5年前
, 7F
09/06 16:21, 7F
→
09/06 16:22,
5年前
, 8F
09/06 16:22, 8F
→
09/06 16:22,
5年前
, 9F
09/06 16:22, 9F
推
09/06 16:27,
5年前
, 10F
09/06 16:27, 10F
→
09/06 16:28,
5年前
, 11F
09/06 16:28, 11F
→
09/06 20:54,
5年前
, 12F
09/06 20:54, 12F
推
09/06 22:20,
5年前
, 13F
09/06 22:20, 13F
→
09/06 22:20,
5年前
, 14F
09/06 22:20, 14F
→
09/06 22:20,
5年前
, 15F
09/06 22:20, 15F
→
09/06 22:21,
5年前
, 16F
09/06 22:21, 16F
→
09/06 22:21,
5年前
, 17F
09/06 22:21, 17F
好像也是...理論上數字越大要比越久
※ 編輯: NTUmaki (27.247.233.249 臺灣), 09/07/2020 20:14:19