题解 | 移除链表元素

移除链表元素

https://www.nowcoder.com/practice/428a854dff8b4333b54cfe580323e2df

/**
 * struct ListNode {
 *	int val;
 *	struct ListNode *next;
 * };
 */
/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 
 * @param head ListNode类 
 * @param val int整型 
 * @return ListNode类
 */
struct ListNode* removeElements(struct ListNode* head, int val ) {
    // write code here
    struct ListNode*p=head;
    while(p!=NULL)
    {   if(p->next!=NULL&&p->val==val)
       {
           struct ListNode*q=p->next;
           p->val=q->val;
           p->next=q->next;
           free(q);
           
          
       }
    else if(p->next==NULL&&p->val==val)
        {
            free(p);
            break;
        }
        else
           p=p->next; 
        
        

    }
    return head;
}

全部评论

相关推荐

哈哈哈,你是老六:百度去年裁员分评不好,赶紧弄点红包
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务