您的位置:首页 > 其它

[leetcode 203] Remove Linked List Elements

2015-12-20 20:34 281 查看
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.

Subscribe to see which companies asked this question

Solution:

struct ListNode* removeElements(struct ListNode* head, int val)
{
struct ListNode dummy;
struct ListNode* p = &dummy;
dummy.next = head;

while (p->next != NULL)
{
if (p->next->val == val) // find, delete it
{
p->next = p->next->next;
}
else // go on
{
p = p->next;
}
}

return dummy.next;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: