【Java 数据布局】移除链表元素

[复制链接]
发表于 2025-11-20 11:35:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
 🔥博客主页🔥:【 坊钰_CSDN博客 】
  接待各位点赞👍批评✍收藏⭐
  

  目次
1. 标题
2. 剖析
3. 代码实现
 4. 小结


 
   
标题出处:203. 移除链表元素 - 力扣(LeetCode) 

  1. 标题

给你一个链表的头节点 head 和一个整数 val ,请你删除链表中全部满意 Node.val == val 的节点,并返回 新的头节点 。
   示例 1:
  
  

  1. <strong>输入:</strong>head = [1,2,6,3,4,5,6], val = 6
  2. <strong>输出:</strong>[1,2,3,4,5]
复制代码
示例 2:
  1. <strong>输入:</strong>head = [], val = 1
  2. <strong>输出:</strong>[]
复制代码
示例 3:
  1. <strong>输入:</strong>head = [7,7,7,7], val = 7
  2. <strong>输出:</strong>[]
复制代码
2. 剖析



  •  先创建一个前头部节点,用来存放头节点,便于后续遍历和删除

  •  用 dehead != null 的条件来依次遍历链表,遇到要删除的值,举行删除操纵
  • 末了返转头部节点,也就是 dehead.next 即可
3. 代码实现

  1. class Solution {
  2.     public ListNode removeElements(ListNode head, int val) {
  3.         ListNode dehead = new ListNode(0);
  4.         dehead.next = head;
  5.         ListNode ret = dehead;
  6.         while (ret.next != null) {
  7.             if (ret.next.val == val) {
  8.                 ret.next = ret.next.next;
  9.             } else {
  10.                 ret = ret.next;
  11.             }
  12.         }
  13.         return dehead.next;
  14.     }
  15. }
复制代码
 4. 小结

以上就是对该题的相识,具体还需宝子们去实践,如果以为该博客对你有用的话,渴望一键三连,点个关注不迷路,谢谢支持  
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表