论坛首页 综合技术论坛

排序时用数组还是链表

浏览 3879 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-01-06  
为什么数据结构书上都是用数组?而不是用链表?
链表的元素移动效率不是更高吗?

比如,插入排序的第一次查找最小元素

加入最小元素在最后一个,把他拷入临时变量,然后让所有其他元素向后移动,需要移动n-1个位置。
但是用链表的话,我只要修改两个元素的pointer就好了。

为什么?为什么?为什么?
   发表时间:2012-01-06  
数据结构中的线性数据结构很多需要随机访问,而数组正是完全满足需求的数据结构。
比如:快排、二分查找、堆排都需要数组才行。
需要频繁插入或删除远多于随机访问的场合,确实应该用链表。
你看看数据结构中队列的实现,应该有提到链表。
1 请登录后投票
   发表时间:2012-01-08  
谢谢你啊,其实我有很多弱智问题。希望有好心人来解答。

受到启发,因为线性结构的lookup 复杂读为1, 做很多事情还是方便。

看来选取数据结构的实现还是要根据不同情况来定。
0 请登录后投票
   发表时间:2012-01-29  
为什么是数组?
为什么是随机访问?
这是计算机科学专业所有问题的基础。
等那天计算机的基本架构变了,就不用数组了。
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics