给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。

示例 1:

输入:head = [1,2,6,3,4,5,6], val = 6
输出:[1,2,3,4,5]
示例 2:

输入:head = [], val = 1
输出:[]
示例 3:

输入:head = [7,7,7,7], val = 7
输出:[]

提示:

列表中的节点在范围 [0, 104] 内
1 <= Node.val <= 50
0 <= k <= 50

这道题分三部分:
1,链表为空直接返回为NULL
2,正常删除链表中的节点,即被删除的前一个节点指针域指向被删除节点的下一个节点;
3,若需要删除头节点,则单独考虑;
代码如下:

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/struct ListNode* removeElements(struct ListNode* head, int val)
{if(head==NULL)//如果链表为空返回空return NULL;struct ListNode* p=head;struct ListNode* q=head->next;while(q!=NULL){if(q->val==val)p->next=q->next;//删除操作elsep=q;q=q->next;}if(head->val==val)//头节点为删除节点head=head->next;return head;
}

203. 移除链表元素(C语言)相关推荐

  1. 203. 移除链表元素 力扣 c语言

    203. 移除链表元素 难度简单843 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 . 方法1 迭代 也可 ...

  2. LeetCode-链表-203. 移除链表元素

    描述 203. 移除链表元素 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 . 示例 1: 输入:head ...

  3. LeetCode Algorithm 203. 移除链表元素

    203. 移除链表元素 Ideas 这题其实很简单,从头开始遍历,只要遇到node->val==val的通通删除就OK了. Code C++ class Solution {public:Lis ...

  4. Suzy找到实习了吗Day 3 | 链表开始啦 203移除链表元素 707设计链表 206 反转链表

    定义链表的结构 class ListNode:def __init__(self, val, next=None): #构造函数self.val = valself.next = next 尾部nod ...

  5. Java实现 LeetCode 203 移除链表元素

    203. 移除链表元素 删除链表中等于给定值 val 的所有节点. 示例: 输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2 ...

  6. json移除一个元素_leetcode:203.移除链表元素,听说用虚拟头节点会方便很多?

    链表操作中,可以使用原链表来直接进行删除操作,也可以设置一个虚拟头结点在进行删除操作,接下来看一看哪种方式更方便. ❞ 第203题:移除链表元素 题意:删除链表中等于给定值 val 的所有节点. 思路 ...

  7. 文巾解题 203. 移除链表元素

    1 题目描述 2 解题思路 2.1 循环判断 先特判链表为空/只有一个元素的情况. 然后循环判断,如果下一个值等于val,那么就把当前位置的next再往后挪一个:如果值不等于val,向后推进一个. 但 ...

  8. leetcode 203. 移除链表元素

    题目 思路 经典的小弟大哥解法: 小弟踩着大哥的脚印 大哥先走一步 题解 // Definition for singly-linked list. class ListNode {int val;L ...

  9. 移除链表元素 C语言

    题目描述: 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 . 示例: 输入:head = [1,2,6,3, ...

最新文章

  1. NYOJ 558 一二三
  2. 【数据结构与算法】之深入解析“缺失的第一个正数”的求解思路与算法示例
  3. 快乐学习 Ionic Framework+PhoneGap 手册1-3 {面板切换}
  4. gnu2和gnu3区别_GNU,生日快乐:为什么35年后我仍然爱GNU
  5. Spring-beans-BeanPostProcessor/InitializingBean
  6. 把人物用 Unity 进行 2D 传送,拢共分四步 | 原力计划
  7. python 以行为单位进行字符串的切割
  8. python下GDAL库安装——以pycharm编译器为例
  9. 嫦娥四号的通讯速率,为何没有视频直播
  10. 四叉树——图片应用实例
  11. CnPack20090801更新包
  12. 微软家庭服务器,微软下一代Windows家庭服务器Vail初印象
  13. css样式换行缩进技巧
  14. button type属性
  15. CF1613B Absent Remainder
  16. PD QC BC 充电协议的电流电压
  17. 【详细】AS400系统安装gcc教程
  18. 计算机视觉目标检测常用的一些评估指标
  19. 手机控制远程linux,远程控制系统如何控制智能家居的?
  20. 工作四年都没搞定的Mysql事务和锁机制,这篇一次讲清!

热门文章

  1. geek软件_社团秀@UNC新媒体协会@管理会计研学社@Geek社团
  2. 5G是很快,但也别忘了网络安全问题!
  3. mysql 语句怎样修饰约束_MySQL中的约束,添加约束,删除约束,以及一些其他修饰讲解...
  4. web版本 开源压测工具_标星 1.3K 的 Web 框架压测库,助你更好的选择框架
  5. Python编程语言学习:在for循环中如何同时使用2个变量或者3个变量
  6. DL之ShuffleNetV2:ShuffleNetV2算法的简介(论文介绍)、架构详解、案例应用等配图集合之详细攻略
  7. Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(Button的command/Label/PhotoImage/封装为类)
  8. VB:使用Visual Studio 2010中的VB语言工具箱DataGridView调用SQL数据库Database的表格文件
  9. 蓝桥杯_算法训练_字串统计
  10. set nocount on