引用块内容
特殊情况考虑
1.首节点为空
if(head==NULL)
{
return 0;
}
2.尾节点为空
1->null 1
结果应为 null
3.1->null->1
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode(int x) : val(x), next(NULL) {}
* };
*/
class Solution {
public:
/**
* @param head a ListNode
* @param val an integer
* @return a ListNode
*/
ListNode *removeElements(ListNode *head, int val) {
if(head==NULL)
{
return NULL;
}
ListNode*m=head;
while(m->next!=NULL)
{
if(m->next->val==val)
{
m->next=m->next->next;
}
else
{
m=m->next;
}
}
if(head->val==val)
{
if(head->next==NULL)
{
return NULL;
}
}
return head;
}
};