首页 > 其他分享 >203. 移除链表元素

203. 移除链表元素

时间:2022-10-13 14:14:59浏览次数:86  
标签:203 ListNode cur val head Next 链表 移除

203. 移除链表元素

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

解放一:利用虚拟头结点遍历

func removeElements(head *ListNode, val int) *ListNode {
    dummyHead := &ListNode{}
    dummyHead.Next = head
    cur := dummyHead
    for cur != nil && cur.Next != nil {
        if cur.Next.Val == val {
            cur.Next = cur.Next.Next
        } else {
            cur = cur.Next
        }
    }
    return dummyHead.Next
}

 解法二:递归解法

func removeElements(head *ListNode, val int) *ListNode {
    if head == nil {
        return head
    }
    head.Next = removeElements(head.Next,val)
    if head.Val == val {
        return head.Next
    }
    return head
}

 

标签:203,ListNode,cur,val,head,Next,链表,移除
From: https://www.cnblogs.com/fulaien/p/16787971.html

相关文章

  • C语言基于单链表的词典软件
    C语言基于单链表的词典软件实验1:日期:2022-10-4类型:设计型题目:基于单链表的词典软件内容:利用单链表存储词典,可以实现从文件中加载数据、查询单词、添加词条、删除词条......
  • 环形链表
    环形链表一,题目描述给定一个链表的头节点,判断链表中是否存在环。存在返回true,不存在返回false。二,解题思路如果链表无环,遍历后最终都会指向null。如果有环,会重复遍历。......
  • 27.移除元素
    给你一个数组nums和一个值val,你需要原地移除所有数值等于val的元素,并返回移除后数组的新长度classSolution{public:intremoveElement(vector<int>&nums,......
  • 链表的逆置
    本题要求实现一个函数,将给定单向链表逆置,即表头置为表尾,表尾置为表头。链表结点定义如下:structListNode{intdata;structListNode*next;};函数接口定义......
  • 代码随想录算法训练营第一天 | 704. 二分查找 35.搜索插入位置 27. 移除元素 (LeetC
    704.二分查找题目链接使用条件:数组有序无重复元素写法:根据搜索区间边界是左闭右开还是左闭右闭分为两种写法:左闭右开区间右侧不包括在区间内,在写代码的时候......
  • leetcode27.移除元素
    1.题目描述给你一个数组nums和一个值val,你需要原地移除所有数值等于val的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用O(1)额外空间并......
  • TZOJ 7871:维护序列 单链表应用(创建/查询/插入/删除)
    描述 给定一个长度为n的整数序列。现在有m个操作,操作分为三类,格式如下:(1)1i:询问序列中第i个元素的值,保证i小于等于当前序列长度。(2)2iv:在序列中第i个元素前加......
  • 单链表-Python实现-jupyter->markdown 格式测试
    单链表引入顺序表理解Python变量的本质:变量存储的不是值,是值的地址理解Python的"="表示的是指向关系案例:交换a,b的值,a=10,b=20a,b=20,10t0:a这块内存(也有id),......
  • 代码随想录算法训练营第一天 |704. 二分查找, 17. 移除元素
    算法训练营第一天,训练内容是二分查找和双指针。704.二分查找``` classSolution{  publicintsearch(int[]nums,inttarget){    intn=nums.le......
  • 【算法训练营day1】LeetCode704. 二分查找 LeetCode27. 移除元素
    【算法训练营day1】LeetCode704.二分查找LeetCode27.移除元素LeetCode704.二分查找题目链接:704.二分查找初次尝试看到题目标题是二分查找,所以尝试使用二分查找的......