码迷,mamicode.com
首页 > 其他好文 > 详细

链表操作

时间:2019-01-29 10:45:15      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:dcom   特点   时间   添加   哈希表   插入   链表操作   高效   碎片   

链表和数组作为算法中的两个基本数据结构,两种结构都可以用来存储一系列的数据,但又各有各的特点。

数组的优势,在于可以方便的遍历查找需要的数据。在查询数组指定位置(如查询数组中的第4个数据)的操作中,只需要进行1次操作即可,时间复杂度为O(1)。但是,这种时间上的便利性,是因为数组在内存中占用了连续的空间,在进行类似的查找或者遍历时,本质是指针在内存中的定向偏移。然而,当需要对数组成员进行添加和删除的操作时,数组内完成这类操作的时间复杂度则变成了O(n)。

链表的特性,使其在某些操作上比数组更加高效。例如当进行插入和删除操作时,链表操作的时间复杂度仅为O(1)。另外,因为链表在内存中不是连续存储的,所以可以充分利用内存中的碎片空间。除此之外,链表还是很多算法的基础,最常见的哈希表就是基于链表来实现的。基于以上原因,我们可以看到,链表在程序设计过程中是非常重要的。

最近公司数据核心部分代码在进行重构,我代表无线组参与了此次重构任务,平时写的业务代码居多,正好借着次机会,摆脱封装的束缚,深入学习一下数据结构部分。

我司代码框架是在Broadcom基础上衍生过来的,这几年一直迭代,越来越臃肿,尤其是数据操作部分,最近架构师决定带领大家进行重构优化。

链表操作

标签:dcom   特点   时间   添加   哈希表   插入   链表操作   高效   碎片   

原文地址:https://www.cnblogs.com/xuqiushuo/p/10332462.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!