0
点赞
收藏
分享

微信扫一扫

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


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


????????????????????????
????Hello,大家好我是Dream,欢迎大家来到刷题乐园????????????

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

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

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



????????????游园路线图:


  • ​​????乐园描述​​
  • ​​????游园准备​​
  • ​​????开始游玩​​
  • ​​????游玩总结​​
  • ​​????????????最后的福利​​


????乐园描述

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

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

示例 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

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

????游玩总结

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


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


????????????最后的福利

????????????最后一点小福利带给大家:如果想快速上手python的小伙伴们,这个详细整理PPT可以迅速帮助大家打牢python基础,需要的小伙伴们可以下载一下 ​​Python入门基础教程全套+小白速成+学不会来找我!​​ ????????????

还有自制表白神器,需要自取:

​​Python表白神器,源码+解析+各种完美配置+浪漫新颖​​ ????????????

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

???????????? 好啦,这就是今天要分享给大家的全部内容了

❤️❤️❤️如果你喜欢的话,就不要吝惜你的一键三连了~Python递归+链表【Dream的刷题乐园⚡】❤️LeetCode每日游园系列❤️——203. 移除链表元素_python_05



举报

相关推荐

0 条评论