LeetCode203——Remove Linked List Elements

来源:互联网 发布:上海高通待遇 知乎 编辑:程序博客网 时间:2024/06/03 19:25

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

Credits: Special thanks to @mithmatt for adding this problem and creating all test cases.

实现:

ListNode* removeElements(ListNode* head, int val) {    ListNode* currNode = head;    while (true) {        if (head == NULL) return NULL;        if (currNode->val != val) break;        currNode = currNode->next;        head = currNode;    }    while (currNode->next) {        if (currNode->next->val == val) {            currNode->next = currNode->next->next;        } else {            currNode = currNode->next;        }    }    return head;}
0 0
原创粉丝点击