网易首页 > 网易号 > 正文 申请入驻

数据高频增删下,数组为何被链表替代

0
分享至

“添加和删除元素时,链表只需要更新指针。”这句来自某经典教材的描述,无意间点出了许多数据密集型应用背后的底层诀窍。多数人入门就死记硬背的数组,在频繁插入、移除数据的场景里会拖慢整个系统。今天不写代码,我们单纯从内存里的指针跳转,拆开看看链表凭什么被高频操作选中。

先说一个反直觉事实:八年前就有万亿参数级别的模型在内部实验,而它们内部索引结构的局部,经常依赖一种古老且朴素的链式组织。链表的节点散落在内存各处,不需要像数组那样在创建时就预估容量,更不必在中间插入时把后面所有成员向后搬家。这种“不需要预先申请连片土地”的特性,让动态扩缩变得极其廉价。


接下来我们按四个方面拆解,看看它为什么适合数据密集型产品。

一、插入与删除的时间成本
在数组头部插入一个新元素,要将现有全部元素后移一位;删除头部,同样要前移所有元素。元素数量一大,时间开销线性增长。链表则在目标位置旁新开一个节点,然后改动前一个节点的指针指向它,再把它的指针指向后一个节点。就算列表有一千万个节点,只要已知插入位置,改动依然只有常数时间。原文明确指出,这种高效源于只更新指针,不涉及元素整体搬迁。

二、内存只在需要时分配
传统数组必须预先划定连续空间。如果你预估1000个元素的容量但实际只用到了200,802个元素位就闲置浪费;一旦实际需要1001个,又不得不重新申请更大内存并整体复制。链表则随手创建节点,用完即弃,没有预分配内存的包袱。原文强调节点只在需要时才被分配,避免了无谓的内存浪费,这对于内存受限的设备或高并发服务很有价值。

三、运行时可动态缩放
很多实时系统无法接受因扩容引起的全局拷贝。链表天生支持运行时随时在头部、尾部或中间挂载新节点,无需惊动整个结构。这种无须预知数据总量的弹性,让它很适合消息队列、实时日志流等不断增长又无须随机下标访问的场景。原文特别将动态调整大小列为关键优势,足见设计者看重这种伸缩自由。

四、遍历方向的灵活性
单向链表只能一路向前,而双向链表每个节点同时持有前后指针,可以从任意位置反向回溯。循环链表将末尾节点指针指回头部,形成闭环,适合轮询调度、循环缓存等需要无限循环遍历的玩法。原文将双向和循环链表归为灵活遍历的代表,指出它们在复杂导航中更实用,比如某些编辑器的撤销/重做栈就是双向链表的变种。

聊完好处,必须看结构本身。链表的世界里,头节点代表起点,尾节点的指针通常指向空值,只有循环链表会让尾节点指回头部,形成环路。每个节点只装两样东西:数据本身和指向其他节点的指针。这是所有变种的共同基石,也是理解一切增删操作的前提。

类型上大致分成三种。单向链表每个节点只有指向后继的“next”指针,结构轻盈但只能一个方向移动。双向链表多了一个指向前驱的“prev”指针,牺牲一点内存换来前后自由移动。循环链表则把单向或双向的尾节点指针接回头部,没有真正的末尾,遍历可以无限循环。选择哪种,全看业务需要的是内存极简、灵活回溯还是环形轮转。

如果要亲手实现,最基本的套路就是先定义节点类和链表类。节点类在构造函数里声明数据字段和指针字段,链表类则负责维护头节点、尾节点和实时节点计数。头尾标记能加快两端插入,计数则让获取长度变成瞬间完成。接下来围绕这些基础构件,可以逐一实现头插、尾插、头删、尾删,以及按索引查找、插入、删除等操作。每种操作严格围绕指针重连,不小心搞错顺序就会造成断链或内存泄漏,这也是一些人觉得链表难调试的源头。

但正是这种看似脆弱的指针舞蹈,给了链表在数组面前无法比拟的增删效率。当你需要频繁改动序列本身,又不依赖下标随机存取,让数据游走在节点之间,比要求一整块连续内存要聪明得多。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
57岁老牌男星用AI做了一张邦德海报,网友:这选角我服

57岁老牌男星用AI做了一张邦德海报,网友:这选角我服

自愈小日子
2026-06-03 00:22:47
冰火两重天!女性成人用品占比超6成,男性ED药日销锐减3.6万片

冰火两重天!女性成人用品占比超6成,男性ED药日销锐减3.6万片

思思夜话
2026-06-02 11:20:02
老婆出轨后,我去找对方老婆,谁料他老婆:给你套房,但有个条件

老婆出轨后,我去找对方老婆,谁料他老婆:给你套房,但有个条件

千秋文化
2026-05-29 19:56:40
港独、骂中国人,如今却还想来内地捞金,这3位香港明星令人作呕

港独、骂中国人,如今却还想来内地捞金,这3位香港明星令人作呕

傲傲讲历史
2026-04-19 01:20:08
53岁任泉近况曝光!被曝与黄绮雯隐婚17年,身价几十亿成人生赢家

53岁任泉近况曝光!被曝与黄绮雯隐婚17年,身价几十亿成人生赢家

观史搜寻着
2026-06-01 10:57:12
邓弗里斯事件见证国米变革:新星再赴比利时 比踢巴黎时降低56岁

邓弗里斯事件见证国米变革:新星再赴比利时 比踢巴黎时降低56岁

国际足球冷雪
2026-06-04 06:43:07
蒋中正亲笔书写的任命状冲上热议!书法的好坏,永远意见不一?

蒋中正亲笔书写的任命状冲上热议!书法的好坏,永远意见不一?

书画相约
2026-06-01 07:23:51
美国国务卿鲁比奥爆料伊朗最高领袖近况:穆杰塔巴还活着,且与美国的接触“越来越多”,尽管他所有沟通都是通过书面形式及中间人进行的

美国国务卿鲁比奥爆料伊朗最高领袖近况:穆杰塔巴还活着,且与美国的接触“越来越多”,尽管他所有沟通都是通过书面形式及中间人进行的

极目新闻
2026-06-03 20:15:39
心理学上有个词叫:破窗效应(如果一个休学的孩子,整天不读书、不出门、不运动,无爱好、无目标、无期望,那他的状态只会越来越糟)

心理学上有个词叫:破窗效应(如果一个休学的孩子,整天不读书、不出门、不运动,无爱好、无目标、无期望,那他的状态只会越来越糟)

掌门1对1
2026-06-02 16:27:26
一碗隔夜米饭毒死7人?医生警告:米饭尽量别这样吃,比砒霜还毒

一碗隔夜米饭毒死7人?医生警告:米饭尽量别这样吃,比砒霜还毒

路医生健康科普
2026-05-31 20:15:03
奚梦瑶晒照感谢婆婆,婚礼上戴了三件她的珠宝,头纱珍珠别针很美

奚梦瑶晒照感谢婆婆,婚礼上戴了三件她的珠宝,头纱珍珠别针很美

舍长阿爷谈事
2026-06-04 07:02:38
“豪门背景”瞒不住!网传家有矿产、北京豪宅,真实现状根本不是

“豪门背景”瞒不住!网传家有矿产、北京豪宅,真实现状根本不是

黔乡小姊妹
2026-06-03 08:11:30
重庆一男子在去钓鱼路上发现街边燃气管道泄漏,燃气公司:泄漏点已抢修完毕,会奖励这位热心市民

重庆一男子在去钓鱼路上发现街边燃气管道泄漏,燃气公司:泄漏点已抢修完毕,会奖励这位热心市民

台州交通广播
2026-06-03 20:19:55
印度一天或死3400人?莫迪宣布3命令,联合国发声…

印度一天或死3400人?莫迪宣布3命令,联合国发声…

福建睿平
2026-06-04 07:47:43
成为迷人的姐姐:不是年龄,是魅力

成为迷人的姐姐:不是年龄,是魅力

疾跑的小蜗牛
2026-06-03 21:02:09
皇马现任主席正式公布竞选方案:若当选,穆里尼奥将成为皇马主帅

皇马现任主席正式公布竞选方案:若当选,穆里尼奥将成为皇马主帅

福酱的小时光
2026-06-04 07:36:28
4次挑衅中国!乌克兰名将:俄罗斯又轰炸乌克兰 有人凌晨被炸去世

4次挑衅中国!乌克兰名将:俄罗斯又轰炸乌克兰 有人凌晨被炸去世

念洲
2026-06-03 08:34:58
不能二次加热的6种食物!医生提醒:吃不完或倒掉,别乱节俭

不能二次加热的6种食物!医生提醒:吃不完或倒掉,别乱节俭

冷眼看世界728
2026-05-12 20:46:26
6年了,郭麒麟的反击几乎断送了朱亚文的演艺生涯

6年了,郭麒麟的反击几乎断送了朱亚文的演艺生涯

小熊侃史
2025-12-25 11:24:12
仅需5.98万!媲美小米SU7,宁德时代电池,而且还能换电!你敢信吗?

仅需5.98万!媲美小米SU7,宁德时代电池,而且还能换电!你敢信吗?

隔壁说车老王
2026-06-04 07:50:11
2026-06-04 08:20:49
闪存猎手
闪存猎手
全网蹲好价的野生捕手,算力与羊毛都不可辜负。
4484文章数 38关注度
往期回顾 全部

科技要闻

传DeepSeek融资意向500亿:腾讯投100亿

头条要闻

纠结的欧洲人:边说"不能关起大门" 边说"不能怕中国"

头条要闻

纠结的欧洲人:边说"不能关起大门" 边说"不能怕中国"

体育要闻

选择中国品牌的库里,和他们的巨大野心

娱乐要闻

官方痛批乱象 刘涛郑恺等艺人遭点名

财经要闻

AI,开始偷懒了?

汽车要闻

专访蒋平:安全不做高低配 长安要让安全技术普惠

态度原创

家居
游戏
亲子
手机
公开课

家居要闻

江畔轻奢 观云大宅

《乐高蝙蝠侠:黑暗骑士遗产》NS2版9月18日发售

亲子要闻

9岁孩童竟患上冠心病!医生说明原因,父母后悔不已……

手机要闻

vivo X500 Pro Max曝光:2K 144Hz+天玑9600 Pro,影像也已清晰!

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版