链表

wzdark3 小时前
java·数据结构·链表
基于链表的内存池设计与内存复用机制4内存池是一种用于高效管理动态内存分配与释放的技术,特别适用于频繁进行小块内存申请和释放的场景。通过预先分配一大块内存并按需分发,内存池能够显著减少系统调用开销,提升程序性能。链表作为数据结构中的经典选择,在内存池实现中具有天然优势,其灵活的节点插入与删除能力使得内存块的管理更加高效。
huang57914713 小时前
数据结构·链表·缓存
从缓存行角度优化链表遍历:批处理与预取策略链表作为一种动态数据结构,其节点在内存中通常不连续存储,导致访问时产生大量缓存未命中。当遍历链表时,每个节点的地址随机分布,难以利用CPU缓存的局部性原理。缓存行(Cache Line)大小一般为64字节,若链表节点过小或分布稀疏,单个缓存行可能仅容纳少数几个节点,造成缓存空间浪费。频繁的缓存未命中会显著降低访存效率,成为链表操作性能的主要瓶颈。
a187927218311 天前
数据结构·算法·leetcode·链表·go·指针·环形链表
【算法】链表(二):链表上的双指针——变速、异链与定距,和一份路程账本链表系列第二篇。数组转场链表时我说"快慢指针做过"——做到 LC19 才发现链表上的双指针是另一个世界:数组指针是下标(可以回头看),链表指针是节点地址(改了就丢),于是双指针在链表上长出了三种新形态。本篇四题:LC141 环形链表(变速双指针——快 2 慢 1 的恒定节拍;"快走 3 步行不行"的奇偶性论证;以及 Val 比较误报的教训——有环的判定是同一个节点被再次到达,认点不认值);LC142 环形链表 II(四版弧线——先判后动的初始同点、两段判定顺序必须相反、a ≡ c (mod 环长) 的路程
careathers2 天前
数据结构·链表
【数据结构】链表目录一,前言二,基本实现三,链表与顺序表的区别及对比链表是一种物理上不一定连续而逻辑上连续的存储结构,数据元素的逻辑顺序通过链表节点中的引用链接次序实现。其结构非常多样,主要可分为带头/不带头、循环/不循环、单向/双向,组合排列共计八种。
find1star3 天前
java·数据结构·算法·leetcode·链表·职场和发展·动态规划
LeetCode 25:K 个一组翻转链表这道题要求每 k 个节点翻转一次,如果最后剩余节点不足 k 个,则保持原顺序。我的第一反应不是直接操作链表指针,而是利用 Deque(双端队列)暂存当前这一组节点。
多弗朗皮卡丘4 天前
c语言·数据结构·链表
数据结构4:链表(下)上一章节我们实现了无头单向不循环链表,也了解链表的概念和分类。本章节我们来给链表收尾。有的人一看这里又是带头又是双向又是循环的,就感觉带头双向循环链表实现和理解起来会比无头单向不循环链表会更难。恰恰相反带头双向循环链表实际上比无头单向不循环链表简单很多,比如:带头双向循环链表实现尾插时不需要找尾,随机插入/删除可以选择删除pos,pos之前和pos之后的位置不像无头单向不循环链表那样删除pos和pos之前的位置需要辅助链表。 除了上述的优势,双向链表也比单向链表更容易维护。
203号居民4 天前
算法·leetcode·链表
LeetCode hot 100 — 138. 随机链表的复制LeetCode hot 100 — 138. 随机链表的复制给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。
麻瓜code5 天前
算法·leetcode·链表
【LeetCode】相交链表:双指针法,一次遍历找到交点给你两个单链表的头节点 headA 和 headB,找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null。
神仙别闹6 天前
java·c++·链表
基于 C++ 实现两个有序链表序列的交集大小: 543KB➡️ 资源下载:https://download.csdn.net/download/s1t16/87472194 https://download.csdn.net/download/s1t16/87472194
203号居民6 天前
算法·leetcode·链表
LeetCode hot 100 — 25. K 个一组翻转链表给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。
啵啵啵鱼7 天前
java·数据结构·笔记·后端·链表·obsidian
DS-顺序表
洋不写bug7 天前
数据结构·链表·面试
链表面试笔试经典题目详细解析,题目多解法,复杂度分析hello hello💕,这里是洋不写bug~😄,欢迎大家点赞👍👍,关注😍😍,收藏🌹🌹 对链表完成一些特定的操作,是笔试面试中的常考题型,很多题目都需要借助画图来解决,有的题目在代码中可能稍微代码顺序变化一点,就会出现异常,因此分析时需要细品一下🐵 非常建议铁汁们看完解析后,先自己尝试下写代码,不要直接看题解代码;或者直接不看解析,先画个图,看有没有什么思路🐵 这个专栏的数据结构是代码都是用Java来写的,JavaSE专栏现在已经全部更新完成,铁汁们复习基础知识时非常推荐使用,可以试一
Cccp.1237 天前
leetcode·链表·排序算法
【leetcode】(四)排序算法汇总和链表同样值的个体之间,如果不因为排序而改变相对次序,就是这个排序是有稳定性的;否则就没有。例如:原数组[2,1,2,1,3,2,3,2],排完序后变成新数组[1,1,2,2,2,2,3,3],要保持稳定性,是指原数组中的第一个“1”和第二个“1”在排完序后是否能够对应新数组中的第一个“1”和第二个“1”,同样的,2和3以此类推。
find1star8 天前
java·算法·leetcode·链表
LeetCode 141:环形链表今天做的是 LeetCode 141:环形链表。题目要求判断一个单链表中是否存在环。所谓环,就是链表中的某个节点的 next 指针重新指向了前面的某个节点。
heima20168 天前
链表
长期复盘:餐饮店活动拓客链接的行业现状与使用困境在当今的餐饮行业,借助拼团活动链接进行拓客已成为常见手段,但传统模式存在诸多技术短板。传统人工拓客方式依赖线下传单和口口相传,效率低下且覆盖面窄,难以精准触达潜在客户。线上活动落地也面临重重困难,例如低端模板工具功能阉割严重,仅提供简单的拼团形式,缺乏个性化定制,无法满足不同餐饮店的特色需求。
ysu_03148 天前
c语言·数据结构·链表
03-双链表与循环链表🎯 本篇目标:掌握双链表和循环链表的概念与实现,理解它们相比单链表的优势!哈喽小伙伴们!👋上一篇我们学习了单链表,它只能单向遍历,想要找前一个节点还得从头开始找,太不方便了!😫
ltqshs8 天前
c语言·开发语言·链表
C语言-链表例程尾插不带头:尾插带头:头插带头:
Lyyaoo.8 天前
数据结构·链表·缓存
【链表】【中等】两数相加/倒N删除/两个交换/排序链表/LRU缓存原题链接两个链表逐位走,当前位 % 10,进位 / 10,剩余 carry 标记进位原题链接注意考虑删除节点为第一个节点的情况->虚拟头节点
bro_Java6668 天前
数据结构·链表
链表进阶:链表笔试真题本文是链表笔试真题的刷题笔记,涵盖移除元素、找中间节点、找倒数第 K 个节点、合并有序链表、链表分割、回文判断、相交判定、环形链表与入口点、反转链表共 10 道高频题。每道题都给出题目链接、解题思路、完整代码与易错点,适合面试前集中复习。
血小板要健康9 天前
java·数据结构·笔记·算法·leetcode·链表
链表 阶段算法总结目录一、先把链表想清楚1. 链表是什么2. 为什么链表不能像数组一样按下标访问3. LeetCode 中的 ListNode