从小白开始刷算法 ListNode 链表篇 leetcode.203

简介: 从小白开始刷算法 ListNode 链表篇 leetcode.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

输出:[]


//ListNode 节点
 class ListNode {
     int val;
     ListNode next;
     ListNode() {}
     ListNode(int val) { this.val = val; }
     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 }
//这个是int列表转ListNode节点,在网上找不到,
//本地测试时候需要使用,自己写的小工具的ヾ(≧▽≦*)o
public static ListNode arrayToListNode(int[] a){
    ListNode head=new ListNode(a[0]);
    ListNode temp;
    temp = head;
    for (int i = 1; i < a.length; i++) {
        ListNode a1 = new ListNode(a[i]);
        temp.next = a1;
        temp = a1;
    }
    return head;
}

能否写出:能写出来


时间:大概20分钟


思路:这题算是链表的入门题。必须学会,这个是我第一次写的,解答失败,在示例三里失败


测试用例:[7,7,7,7]

7

测试结果:[7,7]

期望结果:[]


原因:

我的代码里在删除元素时出现一个问题。当 head.val == val 时,只更新了 prev 的 next 指针,但没有更新 head 的值。这可能导致在下一次迭代时,如果下一个节点的值仍然等于 val,则会出现错误。


         

调整后正确解法


         

时间复杂度:O(n)

空间复杂度:O(1)

相关文章
|
1月前
|
算法 索引
❤️算法笔记❤️-(每日一刷-141、环形链表)
❤️算法笔记❤️-(每日一刷-141、环形链表)
46 0
|
1月前
|
算法
【❤️算法笔记❤️】-(每日一刷-876、单链表的中点)
【❤️算法笔记❤️】-(每日一刷-876、单链表的中点)
44 0
|
17天前
|
存储 算法 Java
leetcode算法题-有效的括号(简单)
【11月更文挑战第5天】本文介绍了 LeetCode 上“有效的括号”这道题的解法。题目要求判断一个只包含括号字符的字符串是否有效。有效字符串需满足左括号必须用相同类型的右括号闭合,并且左括号必须以正确的顺序闭合。解题思路是使用栈数据结构,遍历字符串时将左括号压入栈中,遇到右括号时检查栈顶元素是否匹配。最后根据栈是否为空来判断字符串中的括号是否有效。示例代码包括 Python 和 Java 版本。
|
25天前
|
算法 安全 搜索推荐
2024重生之回溯数据结构与算法系列学习之单双链表精题详解(9)【无论是王道考研人还是IKUN都能包会的;不然别给我家鸽鸽丢脸好嘛?】
数据结构王道第2.3章之IKUN和I原达人之数据结构与算法系列学习x单双链表精题详解、数据结构、C++、排序算法、java、动态规划你个小黑子;这都学不会;能不能不要给我家鸽鸽丢脸啊~除了会黑我家鸽鸽还会干嘛?!!!
|
25天前
|
存储 Web App开发 算法
2024重生之回溯数据结构与算法系列学习之单双链表【无论是王道考研人还是IKUN都能包会的;不然别给我家鸽鸽丢脸好嘛?】
数据结构之单双链表按位、值查找;[前后]插入;删除指定节点;求表长、静态链表等代码及具体思路详解步骤;举例说明、注意点及常见报错问题所对应的解决方法
|
1月前
|
算法
每日一道算法题(Leetcode 20)
每日一道算法题(Leetcode 20)
27 2
|
1月前
|
存储 缓存 算法
经典算法之链表篇(三)
经典算法之链表篇(三)
|
1月前
|
算法
经典算法之链表篇(二)
经典算法之链表篇(二)
|
1月前
|
算法 索引
经典算法之链表篇
经典算法之链表篇
|
1月前
|
算法
❤️算法笔记❤️-(每日一刷-160、相交链表)
❤️算法笔记❤️-(每日一刷-160、相交链表)
18 1
下一篇
无影云桌面