203. Remove Linked List Elements

2018/04/17 leetcode 共 596 字,约 2 分钟

Title

the problem link

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

题目大意:删除链表的某个元素

Solution

//cpp:
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * };
 */
class Solution {
public:
    ListNode* removeElements(ListNode* head, int val) {
        ListNode *parent=new ListNode(-1);
        ListNode *root=parent;
        parent->next=head;
        while(head){
            if(head->val==val){
                parent->next=head->next;
                head=parent->next;
            }else{
                parent=head;
                head=head->next;
            }

        }
        return root->next;
    }
};

Search

    Table of Contents