作者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
1F:→ MOONRAKER:阿我设一个list 然後一直add就好了 小数量下根本 05/05 18:02
2F:→ MOONRAKER:不用担心 这样当然是比较简单 怎麽会跟简单没关系 05/05 18:02
3F:→ MOONRAKER:大概这样就叫各自表述吧,哈 05/05 18:03