lc203 return value的问题

来源:5-3 设立链表的虚拟头结点 Remove Linked List Elements

Y1ng

2019-11-15

可能依然是java的指针问题,lc203:

class Solution {
    public ListNode removeElements(ListNode head, int val) {
        ListNode dummyHead = new ListNode(-1);
        dummyHead.next = head;
        ListNode prev = dummyHead;
            
        while(prev.next != null) {
            if(prev.next.val == val) {
                prev.next = prev.next.next;
            } else {
                prev = prev.next;
            }
        }

        return head;
    }
}

会报错。
如果将return head改为return dummyHead.next 则没有问题。
没想明白,求大家解答,谢谢!

写回答

1回答

Y1ng

提问者

2019-11-15

明白了  区别在于head本身是否会被删除。打扰大家了~

0
1
liuyubobobo
继续加油!:)
2019-11-15
共1条回复

玩转算法面试-- Leetcode真题分门别类讲解

课程配套大量BAT面试真题,高频算法题解析,强化训练

7408 学习 · 1150 问题

查看课程