单向链表和双向链表的一些基本算法

单向链表头插尾插

单向链表的销毁与反转

反转原理:将头节点与后面的节点分开,然后从第一个节点开始对每个节点使用头插法

冒泡排

选排

链表环:

判断是否有环:弗洛伊德快慢指针(快指针一般是慢指针的2倍,差为自然数增长)检测法,如果快指针在遍历过程中遇到了慢指针,则有环存在

判断环入口:在相遇点,令慢指针回到头节点,然后两个指针以相同的速度移动,再次相遇点即为入口;

链表环好处:1.链表环允许从某个节点开始无限循环访问,这在需要持续遍历数据的场景中非常有用,比如任务调度、游戏循环等。

2.如果链表中有多个节点需要共享相同数据,使用环可以避免创建多个节点,节省内存。

3.对于需要处理持续流入数据的应用,环可以有效地管理数据,避免频繁的内存分配和释放。

相关推荐
普贤莲花6 分钟前
【2026年第18周---写于20260501】---舍得
程序人生·算法·leetcode
2zcode6 分钟前
基于深度学习的口腔疾病图像识别系统(UI界面+改进算法+数据集+训练代码)
人工智能·深度学习·算法
Sarvartha15 分钟前
N 个字符串最长公共子序列(LCS)求解问题
数据结构·算法
一切皆是因缘际会16 分钟前
下一代 AI 架构:基于记忆演化与单向投影的安全智能系统
大数据·人工智能·深度学习·算法·安全·架构
falldeep22 分钟前
五分钟了解OpenClaw底层架构
人工智能·算法·机器学习·架构
m0_6294947322 分钟前
LeetCode 热题 100-----16.除了自身以外数组的乘积
数据结构·算法·leetcode
weixin_4462608528 分钟前
模型能力深度对决:GPT-4o、Claude 3.5和DeepSeek V系列模型的横向评测与未来趋势洞察
人工智能·算法·机器学习
迷途之人不知返1 小时前
优先级队列:priority_queue
数据结构·c++
jieyucx1 小时前
Go 零基础数据结构:顺序表(像「排抽屉」一样学增删改查)
java·数据结构·golang
想唱rap1 小时前
应用层协议与序列化
linux·运维·服务器·网络·数据结构·c++·算法