Re: [問題] 有關vb2005 類別與繼承的問題
: 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
→
05/05 18:02, , 1F
05/05 18:02, 1F
→
05/05 18:02, , 2F
05/05 18:02, 2F
→
05/05 18:03, , 3F
05/05 18:03, 3F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):