leetcode:链表的中间节点

在这里插入图片描述
快慢指针
快的到了末尾,慢的所指的就是中点
你一开始写的时候while里面,fast.next放在前面,报错,空指针
应该写在后面,对于偶数个元素的链表而言

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
class Solution {
    public ListNode middleNode(ListNode head) {
        ListNode slow = head;
        ListNode fast = head;
        if(head==null){
            return null;
        }
        while(fast != null && fast.next != null){
            slow = slow.next;
            fast = fast.next.next;          
        }
        return slow;

    }
}

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-03-26 21:48:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-26 21:48:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-26 21:48:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-26 21:48:02       18 阅读

热门阅读

  1. MySQL中的binlog和redolog有什么区别?

    2024-03-26 21:48:02       13 阅读
  2. leetcode-链表

    2024-03-26 21:48:02       17 阅读
  3. 力扣1----10(更新)

    2024-03-26 21:48:02       14 阅读
  4. C# 关键字 as is

    2024-03-26 21:48:02       14 阅读
  5. 接口测试面试题汇总(含答案)

    2024-03-26 21:48:02       18 阅读
  6. 挡边输送带是什么

    2024-03-26 21:48:02       17 阅读
  7. C语言TCP通信基础CS模型

    2024-03-26 21:48:02       17 阅读