LeetCode如何删除链表中指定的所有元素-成都创新互联网站建设

关于创新互联

多方位宣传企业产品与服务 突出企业形象

公司简介 公司的服务 荣誉资质 新闻动态 联系我们

LeetCode如何删除链表中指定的所有元素

这篇文章主要为大家展示了“LeetCode如何删除链表中指定的所有元素”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“LeetCode如何删除链表中指定的所有元素”这篇文章吧。

创新互联建站是工信部颁发资质IDC服务器商,为用户提供优质的成都西云数据中心服务

删除链表中指定的所有元素。

1)删除链表节点时应及时释放节点内存,以免内存泄漏。

2)如果节点值和给定值一致便删除,给*list赋值下个节点;否则取下一节点即可。

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     struct ListNode *next;
 * };
 */
struct ListNode* removeElements(struct ListNode* head, int val) 
{
    if ( head == NULL )
    {   
        return head;
    }   
    struct ListNode **list = &head;
    while ( *list )
    {   
        if ( (*list)->val == val )
        {   
            struct ListNode *delete = *list;
            *list = (*list)->next;
            free(delete);
        }   
        else
        {   
            list = &(*list)->next;
        }   
    }   
    return head;
}

以上是“LeetCode如何删除链表中指定的所有元素”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


网页标题:LeetCode如何删除链表中指定的所有元素
浏览路径:http://kswsj.cn/article/jejdsd.html

其他资讯