本帖最后由 谢洋 于 2013-3-21 23:52 编辑
按我的理解来说吧:链表跟现实中的链表很大的相似之处;
通常我们在描述链表的时,都用节点这个词来形容一个元素与下一个元素的联系,现实中如铁链也一节一节,上一节链着下一节。
链表的节点是怎么样的?节点上有某个元素及下一或上一个元素的的地址这些内容,比如需要对某个元素查找,可通过从当前节点获取上一个或下一个元素的地址,这样就可找到上一个或下一个元素了,逐个查找;
为什么链表结构的增删比数组结构速度要快?
从上链表结构原理来看,当要删除一个节点(元素)时,只要把被删节的前一个节点指向下一个节点的地址修改为指向被删节点的后一个节点就可以了,
而数组则不同,他除了找到元素删除后需对组的长度,角标等信息进行一系例的操作,这里比较复杂,我也不知具体怎么实现的.
相反,查找组数据构相对较快,特别是元素很多的时候较为明显,为什么不用多说了吧,链表是一个个的查,而数组可以根据角标来查。 |