首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

数组和链表,该如何处理

2012-04-14 
数组和链表以前很喜欢用链表,发现链表有很多优点可是最近发现链表似乎不如数组比如以前想动态分配地址就用

数组和链表
以前很喜欢用链表,发现链表有很多优点
可是最近发现链表似乎不如数组
比如
以前想动态分配地址就用链表,后来发现数组也能动态分配
但是遇到需要追加地址的情况就又只能使用链表,但后来发现使用alloc()也可以追加数组元素个数
所以我纳闷了,链表要加一个指针,所以链表所占的空间势必比数组大,使用起来也没数组方便。以前所认为的链表对于数组的两个优点现在发现数组做得更好,而且链表比数组更占空间
请各位告诉我,链表有什么存在的必要呢?

[解决办法]
链表的空间不必连续,所以添加或者删除都比较方便。只是查找比较麻烦点。
[解决办法]
谁也没有说链表好是因为它可以动态分配内存啊?!你说数组使用方便,那么它在哪方面方便,哪方面又不方便呢?!
空间占用也不是决定因素,只要需要,就可以占用更多空间,只要你设计合理即可。
链表的特点在于可以在中间插入和删除,这点数组是无法比拟的

[解决办法]
以前想动态分配地址就用链表,后来发现数组也能动态分配 

你删除数组中间一个数据,然后保持连续性,可以吗?链表的用处大者呢。
[解决办法]
各有千秋,建议LZ好好看看数据结构中有序表跟链表的特点.
[解决办法]
数组的动态分配是什么?难道数组可以预先不给它分配多少空间?就算上面提到的2点数组也能实现,但数组对内存的空间是连续的,碰到一个程序要分配比较大的空间,此时内存连续的空间又没这么大,但内存的总空间是够大了的,所以此时用链表还能实现,以不至于程序结束。
[解决办法]
排个序,删个元素什么的,就知道区别了

热点排行