力扣 203 移除链表元素

简介: 力扣 203 移除链表元素

1.解题思路

利用快慢指针,如果快指针此时的值为val则将此时满指针的next指向快指针的next利用循环,其次,要特意判断链表的头部为val的情况以及链表为空的情况.

2.代码实现

struct ListNode* removeElements(struct ListNode* head, int val)
{  if(head==NULL)
    return NULL;
   while(head&&head->val==val)
{
   head=head->next;
}
    struct ListNode*p=head;
    struct ListNode*prev=NULL;
    while(p)
    {
       if(p->val!=val)
       {   prev=p;
           p=p->next;
       }
      else
      {
        prev->next=p->next;
        p=p->next;
      }
    }
    return head;
}

结尾:今天的分享到此结束,喜欢的朋友如果感觉有帮助可以点赞三连支持,咱们共同进步!

目录
相关文章
|
1天前
|
索引
每日一题:力扣328. 奇偶链表
每日一题:力扣328. 奇偶链表
13 4
|
1天前
leetcode代码记录(下一个更大元素 II
leetcode代码记录(下一个更大元素 II
8 0
|
1天前
|
索引
leetcode代码记录(下一个更大元素 I
leetcode代码记录(下一个更大元素 I
7 0
|
1天前
leetcode代码记录(移除链表元素
leetcode代码记录(移除链表元素
10 0
|
1天前
leetcode代码记录(移除元素
leetcode代码记录(移除元素
9 0
【每日一题】LeetCode——反转链表
【每日一题】LeetCode——反转链表
【每日一题】LeetCode——链表的中间结点
【每日一题】LeetCode——链表的中间结点
|
1天前
|
C++
[leetcode 链表] 反转链表 vs 链表相交
[leetcode 链表] 反转链表 vs 链表相交
|
1天前
|
算法
LeetCode刷题---19. 删除链表的倒数第 N 个结点(双指针-快慢指针)
LeetCode刷题---19. 删除链表的倒数第 N 个结点(双指针-快慢指针)
|
1天前
|
存储
LeetCode刷题---817. 链表组件(哈希表)
LeetCode刷题---817. 链表组件(哈希表)