当前位置: 首页 > wzjs >正文

最好用的素材网站沈阳网站推广优化

最好用的素材网站,沈阳网站推广优化,山西工程项目视频制作公司,网站开发合同管辖权异议203. 移除链表元素https://leetcode.cn/problems/remove-linked-list-elements/ 1、题目 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val val 的节点,并返回 新的头节点 。 示例 1: 输入:head …

203. 移除链表元素https://leetcode.cn/problems/remove-linked-list-elements/

1、题目

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

2、题解

题解1

头结点单独处理。

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {// 移除链表中所有值等于val的节点public ListNode removeElements(ListNode head, int val) {// 1. 移除头节点的值等于val的情况// 如果当前头节点的值等于val,继续移动头节点,直到头节点值不等于valwhile(head != null && head.val == val) {head = head.next;  // 将头节点更新为下一个节点}// 2. 定义指针p从新的头节点开始遍历ListNode p = head;// 3. 遍历链表,删除所有值等于val的节点// 判断当前节点的下一个节点是否需要删除while(p != null && p.next != null) {// 如果下一个节点的值等于val,跳过该节点if(p.next.val == val) {p.next = p.next.next;  // 跳过下一个节点} else {p = p.next;  // 否则继续移动指针}}// 4. 返回修改后的链表头return head;}
}

题解2

使用一个虚拟头结点。

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {// 移除链表中所有值等于val的节点public ListNode removeElements(ListNode head, int val) {// 1. 创建一个虚拟头节点 prehead,指向链表的头部// 这样可以方便处理头节点被删除的情况ListNode prehead = new ListNode(-1, head);// 2. 定义一个指针p从prehead开始遍历链表// prehead的next指向head,p会遍历整个链表ListNode p = prehead;// 3. 遍历链表// 当p的下一个节点不为null时继续循环while(p != null && p.next != null) {// 4. 判断当前节点的下一个节点是否需要删除// 如果下一个节点的值等于val,则跳过该节点if(p.next.val == val) {p.next = p.next.next;  // 删除当前节点的下一个节点} else {p = p.next;  // 否则,继续移动p指针到下一个节点}}// 5. 返回修改后的链表头部// prehead.next就是去除指定值后的链表的头节点return prehead.next;}
}
http://www.dtcms.com/wzjs/464611.html

相关文章:

  • 最专业的房地产网站建设谷歌流量代理代理
  • wordpress中文版主题苏州首页关键词优化
  • 做免费网站推广开头语站长之家站长工具
  • 宁波网站建设推广报价潍坊seo关键词排名
  • 好设计英文网站官网排名优化
  • 温州网站建设徐州关键词优化平台
  • 帮齐家网做的网站网站外链怎么发布
  • 山东省建设厅注册中心网站河南网站优化公司哪家好
  • 网站用户注册怎么建个人建网站的详细步骤
  • 大亚湾住建局网站建设工程规划培训网站有哪些
  • 男女做爰真人视频免费网站百度推广登录首页
  • 中国最大网站建设商搜索引擎优化的基本内容
  • wordpress网站日志文件网络营销服务策略
  • 专业做网站的公司快手作品免费推广软件
  • 做国际贸易网站要什么条件郑州seo顾问外包
  • wordpress 域长春seo网站管理
  • 百度怎么验证网站今日热搜榜前十名
  • 做性的网站有哪些软件定制开发公司
  • 公司商城网站建设百度网盘网址
  • 如何套模板做网站镇江seo优化
  • 建设网站的公司网站推广策划案
  • 合肥网站建设高端软文撰写
  • 做网站用什么语言推广业务平台
  • 网站开发功能需求表教育培训机构平台
  • 义乌做网站要多少钱推广普通话ppt课件
  • 创建公司为什么必须三个人网页优化seo广州
  • 怎么直接做免费网站吗营销型网站
  • 网站开发测试信息流广告公司一级代理
  • 吉林市教做网站网页怎么制作
  • 厦门网站建站推广竞价