今天去面试,他们负责人问我,数组和链表什么区别?

有懂的详细讲解下么。搜索半天只知道数组是连续的链表不连续具体怎么个连续不连续搞不懂

拯救小女孩 -
感谢您为本话题评分。
共有5个回答
  • 0

    数组是内存地址决定顺序,链表是专门存储了一个属性来标识其后一个(单向链表)或者前后两个(双向链表)元素的位置。数组寻址的复杂度为O(1),插入删除的复杂度O(N),而链表与数组相反。因此寻址需求大如虚函数表采用数组,修改需求大采用链表,如malloc管理内存。

  • 0

    数组是内存地址决定顺序,链表是专门存储了一个属性来标识其后一个(单向链表)或者前后两个(双向链表)元素的位置。数组寻址的复杂度为O(1),插入删除的复杂度O(N),而链表与数组相反。因此寻址需求大如虚函数表采用数组,修改需求大采用链表,如malloc管理内存。

  • 0
    大佐 - 2016-08-07 不喜欢

    一个在内存中连续存放,插入删除牵一发而动全身。
    一个在内存中不连续存放,插入删除相对较为简单。

    其实我觉得面试问这些没啥意义吧,能做事就行了,何必在意这些,百度一下都有,数据结构的书里也有,需要用的时候现去查吧。

  • 0
    uooki - 2016-08-20 不喜欢

  • 0

    一个是顺序存储,一个是链式存储。具体的区别可以从申请到使用(元素的增删查改)方面来说。

以下是预览效果,请确认排版好了再点回复。
如果你认为此话题有广告、灌水的嫌疑,请给此话题评一颗星。平均分低的话题将不会再显示。
良好的讨论氛围由大家共同维护。