如果我有同一个类的若干个对象,用数组来存储好呢还是链表存储好?它们对于内存消耗有何不同?问题源于我的程序启动和运行时有时候比较慢(机器重启以后除外),程序运行时create了十几个对象,用数组来存储,我怀疑是不是这样内存消耗太大,用TList来存储时不是要好一点?我的机器是WinXP,192M RAM
不知道各位的程序有没有出现启动时慢,窗口拖动时出现粘滞现象?
不知道各位的程序有没有出现启动时慢,窗口拖动时出现粘滞现象?
一般来说用TList来存储对象的话操作起来会方便一些,而用自定义的数组的话灵活性就没有TList的好了!
楼主自己权衡吧!
对,程序启动的时候要进行某些操作,这个慢一点可以理解。但是启动完成以后,程序进入等待状态,这时仍然慢,拖动时有粘滞,无法弄通的就是这个。
数组 和 链表的主要区别就是速度不一样 TLIST一般情况下 不要用,我测试过自建双向链表
速度要别tlist快的多,如果的你的程序内存存储部分要经常更换大小可以考虑链表 如果大小
不需要变换 可以考虑数组(毕竟速度快多了(直接定位))
链表是 O(n) 操作。
使用数组来编写栈和队列可能效果要比链表更好一些。
这是我从delphi算法与数据结构上看到的。
具体大多少?