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
/** * 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) { if(head == NULL) return head; ListNode* PRe = new ListNode(val); pre->next = head; ListNode* newHead = pre; while(head != NULL){ if(head->val == val) pre->next = head->next; else pre = head; head = head->next; } return newHead->next; }};新闻热点
疑难解答