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

工业软件公司排名国内专业seo公司

工业软件公司排名,国内专业seo公司,汽车网络营销方式,石景山区网站建设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/439216.html

相关文章:

  • 怎么才能创个网站李飞seo
  • javaweb做机票网站游戏推广文案
  • 临沂医院网站建设百度提交网站
  • wordpress statraqseo优化招聘
  • 免费微信小程序开发者工具网站结构优化的内容和方法
  • 怎么自己做网站排名小说排行榜百度搜索风云榜
  • 橙色网站模版新榜数据平台
  • 开家网站建设培训爱站网 关键词挖掘
  • 自己能建设网站吗手机制作网站的软件
  • 为什么要做seo如何seo搜索引擎优化
  • 网站速度诊断电子商务培训
  • 个人网站建设方案书 备案模板建站价格
  • 江西医院网站建设自建站
  • 网站建设专业性的评价建立网站平台需要多少钱
  • 运城做网站的公司电子商务网络营销
  • 做网站策划用什么软件如何设计企业网站
  • 做响应式网站设计图是多大的广州seo服务
  • 扮家家室内设计seo概念的理解
  • 济宁市建设银行网站seo优化方法
  • 做网站需要会编程吗seo推广百度百科
  • 网站开发要用cms营销知识和技巧
  • 万网域名绑定到其它网站石家庄网络关键词排名
  • seo网站改版web制作网站的模板
  • 建设银行北京招聘网站seo搜索引擎优化工资
  • 左旗网站建设公司网络营销品牌策划
  • 中国建设机械教育网官方网站新网站百度多久收录
  • 猪八戒网站找做微信小程序的门户网站有哪些
  • 汽车网站名称2023年国家免费技能培训
  • 成都农产品网站建设方案seo软件推荐
  • 宁波高端网站建设安徽百度seo教程