题目:
Remove all elements from a linked list of integers that have value val.
Example
Given: 1 --> 2 --> 6 --> 3 --> 4 --> 5 --> 6, val = 6
Return: 1 --> 2 --> 3 --> 4 --> 5
AC:
class Solution {
public ListNode removeElements(ListNode head, int val) {
if (null == head) {
return head;
}
ListNode dummyNode = new ListNode(-1);
ListNode currNode = head;
ListNode prevNode = dummyNode;
dummyNode.next = head;
while (null != currNode) {
if (val == currNode.val) {
prevNode.next = currNode.next;
currNode = currNode.next;
}
else {
prevNode = prevNode.next;
currNode = currNode.next;
}
}
return dummyNode.next;
}
}