Python递归+链表【Dream的刷题乐园⚡】❤️LeetCode每日游园系列❤️——203. 移除链表元素

刷题游乐园 专栏收录该内容
24 篇文章 4 订阅

在这里插入图片描述

📢📢📢📣📣📣
🐸Hello,大家好我是Dream,欢迎大家来到刷题乐园😜😜😜

🐹游园须知:这片乐园从不缺乏天才,努力才是你的最终入场券!🚀🚀🚀

🐹导游主要使用Python语言,同时欢迎其他语言的小伙伴进来玩耍☀️☀️☀️
🐹游园过程中,如果发现有错误的话,欢迎大家评论区及时斧正❤️❤️❤️

🐹最后,祝大家游园愉快,一起加油进步🍺🍺🍺

💦乐园描述

给你一个链表的头节点 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 <= val <= 50

💦游园准备

递归法
通过递归的方法去删除节点

  1. 递归程序会先一路遍历来到节点尾部
  2. 从后往前把val符合的节点进行删除, 并重新把链表连接起来 代码

💦开始游玩

class Solution:
    def removeElements(self, head: ListNode, val: int) -> ListNode:
        if head is None:
            return head
        
        # removeElement方法会返回下一个Node节点
        head.next = self.removeElements(head.next, val)
        if head.val == val:
            return head.next 
        else:
            return head

在这里插入图片描述

💦游玩总结

The stage extends as far as the heart goes~加油!❤️❤️❤️

**🏅今天是我打卡的第三天,希望每天都能见到最棒的你🏅**

📢📢📢最后的福利

🍋🍋🍋最后一点小福利带给大家:如果想快速上手python的小伙伴们,这个详细整理PPT可以迅速帮助大家打牢python基础,需要的小伙伴们可以下载一下 Python入门基础教程全套+小白速成+学不会来找我! 🍻🍻🍻
还有自制表白神器,需要自取:
Python表白神器,源码+解析+各种完美配置+浪漫新颖 🍻🍻🍻
在这里插入图片描述

🌲🌲🌲 好啦,这就是今天要分享给大家的全部内容了
❤️❤️❤️如果你喜欢的话,就不要吝惜你的一键三连了~在这里插入图片描述

  • 4
    点赞
  • 2
    评论
  • 3
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:博客之星2021 设计师:Hiro_C 返回首页

打赏作者

是Dream呀

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值