作业感受
题目地址: https://leetcode-cn.com/leetbook/read/linked-list/f9izv/
其实这道题在前面的基础上看还是很简单的,我好像现在对java的语法熟悉了一些,写代码也快了。这次的题目写好就是对的,一次提交成功啦。 不过看到结果以后发现时间上可能还有优化的空间,昨天的作业尝试不使用dummyHead是不行啦,但是在评论区看到了大牛的代码就是没有用dummyHead。 不过我发现那样的代码虽然简洁,但是要看懂需要花费一些时间,所以我等普通人士,要不就还是先这样吧。
作业代码
class Solution {
public ListNode removeElements(ListNode head, int val) {
if(head == null) return null;
ListNode dummyHead = new ListNode(-1);
ListNode slow = dummyHead, fast = head;
dummyHead.next = head;
while(fast!= null){
if(fast.val == val ){
slow.next = fast.next;
fast = fast.next;
} else{
fast = fast.next;
slow = slow.next;
}
}
return dummyHead.next;
}
}