您的位置:首页 > 游戏 > 游戏 > 中国交通建设集团有限公司是央企吗_北京网址导航_百度网盘会员_关键词优化师

中国交通建设集团有限公司是央企吗_北京网址导航_百度网盘会员_关键词优化师

2025/5/19 3:01:48 来源:https://blog.csdn.net/Gao123456fy/article/details/144733048  浏览:    关键词:中国交通建设集团有限公司是央企吗_北京网址导航_百度网盘会员_关键词优化师
中国交通建设集团有限公司是央企吗_北京网址导航_百度网盘会员_关键词优化师

 🔥博客主页🔥:【 坊钰_CSDN博客 】

欢迎各位点赞👍评论✍收藏⭐

题目出处:876. 链表的中间结点 - 力扣(LeetCode)

1. 题目

给你单链表的头结点 head ,请你找出并返回链表的中间结点。

如果有两个中间结点,则返回第二个中间结点。

示例 1:

输入:head = [1,2,3,4,5]
输出:[3,4,5]
解释:链表只有一个中间结点,值为 3 。

示例 2:

输入:head = [1,2,3,4,5,6]
输出:[4,5,6]
解释:该链表有两个中间结点,值分别为 3 和 4 ,返回第二个结点。

2. 解析

2.1 普通方法

  • 可以看到只需要头指针向后走整个链表的一半长度即可找到目标节点

2.2 快慢节点方法

  •  定义两个节点,快节点(fast),慢节点(slow),快节点一次运动两次,慢节点一次运动一次,当快节点到头后,慢节点就是中间节点
  • 原理:路程一样,速度 2 倍,一个运动完,另一个在中间

3. 代码实现

 3.1 普通方法

class Solution {public ListNode middleNode(ListNode head) {if (head == null) return null;ListNode ret = head;int count = 0;while (ret != null) {count++;ret = ret.next;}count /= 2;ret = head;while (count != 0) {ret = ret.next;count--;}return ret;}
}

 3.2 快慢节点方法

class Solution {public ListNode middleNode(ListNode head) {if (head == null) return null;ListNode fast = head;ListNode slow = head;while (fast != null || fast.next != null) {fast = fast.next.next;slow = slow.next;}return slow;}
}

4. 小结

以上就是对该题的了解,具体还需宝子们去实践,如果觉得该博客对你有用的话,希望一键三连,点个关注不迷路,谢谢支持

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com