欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

LeedCode篇:876. 链表的中间结点

发布时间:2025/3/15 编程问答 35 豆豆
生活随笔 收集整理的这篇文章主要介绍了 LeedCode篇:876. 链表的中间结点 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

876. 链表的中间结点

  • 题目:
  • 解题思路:
  • 源码
  • 踩坑点:

题目:

解题思路:

因为要找中间节点,所以用快慢指针的方法

源码

struct ListNode* middleNode(struct ListNode* head){struct ListNode *fast = head;struct ListNode *slow = head;while(fast != NULL && fast->next != NULL){fast = fast->next->next;slow = slow->next;}return slow; }

踩坑点:

while中的fast判断和fast->next判断不能写反,否则会出现空指针的错误
原因: &&运算符会从左往右执行,先执行fast->next != NULL的话就没有判断fast是否为空,此时会出现空指针的错误

总结

以上是生活随笔为你收集整理的LeedCode篇:876. 链表的中间结点的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。