首页 > 其他分享 >JZ18 删除链表的节点

JZ18 删除链表的节点

时间:2023-04-19 22:32:18浏览次数:29  
标签:head ListNode val int JZ18 next 链表 null 节点


import java.util.*;

/*
 * public class ListNode {
 *   int val;
 *   ListNode next = null;
 *   public ListNode(int val) {
 *     this.val = val;
 *   }
 * }
 */

public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param head ListNode类 
     * @param val int整型 
     * @return ListNode类
     */
    public ListNode deleteNode (ListNode head, int val) {
        // write code here
        
        if(head.val==val){
            ListNode p=head.next;
            head.next=null;
            return p;
        }
        if(head==null){
            return null;
        }
        ListNode p=head.next;
        
        ListNode pre=head;
        
        while(p!=null){
            if(p.val==val){
                pre.next=p.next;
            }
            pre=p;
            p=p.next;
        }
        
        return head;
    }
}

标签:head,ListNode,val,int,JZ18,next,链表,null,节点
From: https://blog.51cto.com/hiszm/6207526

相关文章

  • jquery遍历节点
    <table><tbody><tr><td><table><tbody><trclass="s">......
  • 动力节点2023版MyBatisPlus教程【进阶篇】
    来自B站动力节点最新版的MybatisPlus教程,整理了笔记——第四章高级篇4【高级篇】4.1主键策略4.1.1主键生成策略介绍首先大家先要知道什么是主键,主键的作用就是唯一标识,我们可以通过这个唯一标识来定位到这条数据。当然对于表数据中的主键,我们可以自己设计生成规则,生成主键。......
  • LeetCode Top100: 反转链表 (python)
     给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例1:输入:head=[1,2,3,4,5]输出:[5,4,3,2,1]示例2:输入:head=[1,2]输出:[2,1]示例3:输入:head=[]输出:[] 提示:链表中节点的数目范围是 [0,5000]-5000<=Node.val<=5000实现:给你......
  • P1160 队列安排-双链表
    碰到了一道题发现忘了数组模拟双链表怎么实现了,顺便复习了一下。然后解决问题。双链表模板题:实现一个双链表,双链表初始为空,支持 5 种操作:在最左侧插入一个数;在最右侧插入一个数;将第 k 个插入的数删除;在第 k 个插入的数左侧插入一个数;在第 k 个插入的数右侧插入一......
  • leetcode-206反转链表
    反转链表方法一:迭代法/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode():val(0),next(nullptr){}*ListNode(intx):val(x),next(nullptr){}*ListNode(intx,ListNode*next)......
  • 源码共读|yocto-queue 队列 链表
    前言Yocto-queue是一种允许高效存储和检索数据的数据结构。它是一种队列类型,是一个元素集合,其中的项被添加到一端并从另一端移除。它被设计用来操作数据量很大的数组,在你需要使用大量的Array.push、Array.shift操作时,Yocto-queue有更好的性能表现。仓库地址:sindresorhus/yo......
  • 节点与其祖先之间的最大差值(树,二叉树,深度优先搜索)
    1、节点与其祖先之间的最大差值(难度中等)给定二叉树的根节点root,找出存在于不同节点A和B之间的最大值V,其中V=|A.val-B.val|,且A是B的祖先。(如果A的任何子节点之一为B,或者A的任何子节点是B的祖先,那么我们认为A是B的祖先)/***Definitionforabinary......
  • 【LeetCode剑指offer 03】合并两个/K个排序链表
    合并两个排序链表https://leetcode.cn/problems/he-bing-liang-ge-pai-xu-de-lian-biao-lcof输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。示例1:输入:1->2->4,1->3->4输出:1->1->2->3->4->4限制:0<=链表长度<=1000思路代码classSolutio......
  • 移除链表元素
    移除链表元素203.移除链表元素给你一个链表的头节点head和一个整数val,请你删除链表中所有满足Node.val==val的节点,并返回新的头节点。示例1:输入:head=[1,2,6,3,4,5,6],val=6输出:[1,2,3,4,5]Python解一:#Definitionforsingly-linkedlist.#classLi......
  • 部署多节点elasticsearch集群的shell脚本
    以下是一个部署多个节点的elasticsearch集群的shell脚本示例:#!/bin/bash#设置集群名称CLUSTER_NAME="my_cluster"#设置elasticsearch版本号ES_VERSION="7.10.2"#设置elasticsearch安装目录ES_HOME="/usr/local/elasticsearch"#设置elasticsearch数据目录DATA_DI......