删除链表中等于给定值 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 *trick = new ListNode(0);
trick ->next = head;
ListNode *currentNode = head;
ListNode *lastNode = trick;
while(currentNode != NULL)
{
if(currentNode ->val == val)
{
lastNode ->next = currentNode ->next;
currentNode = currentNode ->next;
}
else
{
lastNode = currentNode;
currentNode = currentNode ->next;
}
}
return trick ->next;
}
};