数组
- 操作数据(增加): 是将原数组的数据复制一份,再加上增加的对应位置的数据,形成一个新的数组。所以较慢。
- 查找数据:数组是有下标的,根据下标进行查找。
链表
一个链表的数据单元,结构是存储着一个数据,以及下一个链表单元数据的地址。如下所示。
- 操作数据(增加):如 a-b。在ab之间增加一个c,增加c这个单元,并修改c的“下一个链表单元的地址”为b的地址,并将a的“下一个链表单元的地址”修改为c的地址即可。
- 查找(取出)数据,根据上一个数据,才能找到下一个数据。慢
哈希表: (数组+链表)
是数组和链表的结合体。
总结:
1)修改数组里的数据很快,比链表快。
2) 数组做改查比较快,链表做增删比较快。
3)特殊情况:总在最后一个位置添加新元素,数组就比较快(影响比较微小,两种执行效率应该都挺高)
原文链接:https://www.cnblogs.com/chenjfblog/p/7814926.html