作者cole945 (躂躂..)
看板Visual_Basic
標題Re: [問題] 有關vb2005 類別與繼承的問題
時間Mon May 5 14:47:07 2008
: and more seductive的工具。無上限的串列當然有,叫做list,但是我不建
: 議用,因為會讓事情變得過於簡單。如果要用請自己看help。
list 也有上限.. 這跟事情簡不簡單也沒什麼關係吧 @@
兩個適用於不同的地方, 有不同的 trade-off 要考量..
而且這不是上限不上限的問題, 是可否動態調整配置的問題.
像 Array 這種東西, 因為通常用連續配置記憶體的方式來實作,
所以想要存取第n個項目是, 可以很快的算出他在什麼地方,
因此隨機存取的速度快, 但缺乏彈性, 擴建時的 overhead 很大
=> 適用較少量, 大小固定, 很少insert新資料(因為擴增慢), 而很常要讀資料(快)
而 List 通常較強調可以動態調整大小,
可能的實作方式有
1. Linked List => insert 較快, 但存取較慢(找第n個元素要循序找)
而且要有額外的空間來記錄 next 在哪
2. Reallocation => 不夠就新配置一個更大的空間, 再把舊資料copy過去,
現有空間滿時, 因為要重新配置與複製所以會很慢,
但空間夠時, insert就跟 array 一樣快,
因為通常也是用array實作, 所以存取跟array一樣快
從msdn文件看來, .NET中的List應該是屬於 2 的這種..
所以依原po需要能動態擴充的要求, 應該往 List 的方向來下手..
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.139.135.11
→ MOONRAKER:阿我設一個list 然後一直add就好了 小數量下根本 05/05 18:02
→ MOONRAKER:不用擔心 這樣當然是比較簡單 怎麼會跟簡單沒關係 05/05 18:02
→ MOONRAKER:大概這樣就叫各自表述吧,哈 05/05 18:03