美文网首页
求链表的中间节点

求链表的中间节点

作者: Magic11 | 来源:发表于2020-06-09 10:43 被阅读0次

这题考察的也是快慢指针。

我们对偶数和奇数分别进行分析:

image.png

当链表是偶数时,我们需要判断他自身是否为 null,如果为 null,说明到了末尾。
当链表是奇数时,我们需要判断他的 next 是否为 null,如果是 null,说明到了末尾。
代码如下:

class Solution {
    public ListNode middleNode(ListNode head) {
        ListNode first = head;
        ListNode second = head;
        
        while(first != null && first.next != null){
            first = first.next.next;
            second = second.next;
        }
        
        return second;
    }
}

延伸:判断一个使用链表存储的字符串是否是回文字符串
参考:https://www.jianshu.com/p/e1e546241a31

相关文章

  • 求链表的中间节点

    这题考察的也是快慢指针。 我们对偶数和奇数分别进行分析: 当链表是偶数时,我们需要判断他自身是否为 null,如果...

  • 求链表的中间节点

    给定一个单向链表,怎么找到该链表的中位节点? 可以使用快慢指针,定义 2 个指针变量,慢指针移动步数为 1,快指针...

  • 求链表的中间节点

  • 常见算法总结

    链表 单链表反转链表中环的检测两个有序的链表合并删除链表倒数第 n 个结点求链表中间第n个节点

  • 求单向链表的中间结点

    求单向链表的中间结点 需求 非空的单向链表,返回其中间节点。如果有两个中间结点,返回第二个。链表大小控制在1~10...

  • 链表

    单向链表 链表反转 判断是否有环,找链表的中间节点 快慢指针 找环的入口(求两个链表的交点可以转化成这个问题) p...

  • P111-求链表的中间节点

    要求 如果节点总数为奇数,就返回中间节点;否则,返回中间两个节点的任意一个。 注意 鲁棒性:判断链表是否为空 代码...

  • 求两个链表的交点

    已知链表A的头节点指针headA,链表B的头节点指针headB,两个链表相交,求两链表交点对应的节点。[](Lee...

  • 链表Java实现

    获取链表中间结点 获取链表倒数第 k 个节点

  • 链表中间节点思路

    找链表的中间节点,可以依赖快慢指针来求解。思路是:一个慢指针,从head开始一次走 1 步;另外一个快指针,从he...

网友评论

      本文标题:求链表的中间节点

      本文链接:https://www.haomeiwen.com/subject/cbqstktx.html