魔法师 (@Constanline)Leetcode每日一题 —— 2095. 删除链表的中间节点 中发帖

思路
今天的题用快慢指针只遍历一遍即可,所以就用快慢指针吧。 
代码
    public ListNode deleteMiddle(ListNode head) {
        ListNode hair = new ListNode(0, head);
        ListNode prev = hair;
        ListNode fast = head;
        ListNode slow = head;
        // 快指针走两步慢指针走一步,快指针 next是null或者next.next是null 时 slow正好处于 n/2 的位置,所以要加一个前置节点来连接删除后断开的两节点
        while (fast != null && fast.next != null) {
            fast = fast.next...
 
 
Back to Top