删除链表中等于给定值 val 的所有节点。
示例:
输入: 1->2->6->3->4->5->6, val = 6
输出: 1->2->3->4->5
class Solution {
public:
ListNode* removeElements(ListNode* head, int val) {
ListNode *emptyHead = new ListNode(-1);
emptyHead->next = head;
ListNode *cur = head, *prev = emptyHead;
while(cur != NULL)
{
if(cur->val == val)
{
prev->next = cur->next;
cur = prev->next;
}
else
{
cur = cur->next;
prev = prev->next;
}
}
return emptyHead->next;
}
};
36 ms 11 MB