力扣(LeetCode)每日一题 2181. 合并零之间的节点

news2024/9/25 21:27:02

题目链接https://leetcode.cn/problems/merge-nodes-in-between-zeros/description/?envType=daily-question&envId=2024-09-09

题目描述

给你一个链表的头节点 head ,该链表包含由 0 分隔开的一连串整数。链表的 开端 和 末尾 的节点都满足 Node.val == 0 。

对于每两个相邻的 0 ,请你将它们之间的所有节点合并成一个节点,其值是所有已合并节点的值之和。然后将所有 0 移除,修改后的链表不应该含有任何 0 。

 返回修改后链表的头节点 head 。

示例 1

输入:head = [0,3,1,0,4,5,2,0]
输出:[4,11]
解释:
上图表示输入的链表。修改后的链表包含:
- 标记为绿色的节点之和:3 + 1 = 4
- 标记为红色的节点之和:4 + 5 + 2 = 11

示例 2

输入:head = [0,1,0,3,0,2,2,0]
输出:[1,3,4]
解释:
上图表示输入的链表。修改后的链表包含:
- 标记为绿色的节点之和:1 = 1
- 标记为红色的节点之和:3 = 3
- 标记为黄色的节点之和:2 + 2 = 4

我的代码:

创建一个新节点res。遍历一遍。

/**
 * 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 {
    public ListNode mergeNodes(ListNode head) {
        ListNode h = head;
        ListNode res = new ListNode();
        ListNode resIdx = res;
        int ns = 0;
        while(h != null){
            if(h.val == 0){
                if(ns != 0){
                    resIdx.next = new ListNode(ns);
                    resIdx = resIdx.next;
                    ns = 0;
                }
            }
            if(h.val != 0){
                ns += h.val;
            }
            h=h.next;
        }
        return res.next;
    }
}

提交结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2121307.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HNU-2023电路与电子学-CPU综合设计

写在前面: 本次实验是课程的最后一次实验,要求按照指导书的说明将之前的板块整合成一个完整的CPU,建议大家每连接一个板块都进行一次仿真验证,保证能正常运行且功能正常,如果等到CPU组装好再调试工作量较大并且有些错…

如何恢复最近删除的文件[Windows Mac]

可以通过多种方式删除文件。因此,用户需要恢复他们不小心删除的文件的情况并不少见。 好消息是,用户至少通常可以在删除最近删除的文件后几天或几周内恢复它们。 回收站是 Windows 中的文件删除保护措施,可以轻松恢复文件。 除非另有配置&…

第二证券:科创板股票交易规则,科创板新手可以买吗?

科创板是独立于现有主板商场的特别板块,面向的是国际科技前沿、经济主战场、国家严峻需求,首要服务于契合国家战略、打破要害核心技术、商场认可度高的科技立异企业。 科创板是独立于现有主板商场的特别板块,面向的是国际科技前沿、经济主战…

二叉树 - 验证二叉搜索树

98. 验证二叉搜索树 方法一:辅助数组 /*** Definition for a binary tree node.* function TreeNode(val, left, right) {* this.val (valundefined ? 0 : val)* this.left (leftundefined ? null : left)* this.right (rightundefined ? null :…

WPF中创建横向的ListView

在WPF中,要创建横向的ListView,您可以通过设置ItemsControl的ItemsPanel来改变其项的排列方向。以下是一个简单的示例,展示了如何将ListView的项横向排列: 在这个例子中,WrapPanel用于横向排列其子元素,而…

本地Linux服务器使用docker搭建DashDot并实现公网实时监测服务器信息

文章目录 前言1. 本地环境检查1.1 安装docker1.2 下载Dashdot镜像 2. 部署DashDot应用3. 本地访问DashDot服务4. 安装cpolar内网穿透5. 固定DashDot公网地址 前言 本篇文章我们将使用Docker在本地部署DashDot服务器仪表盘,并且结合cpolar内网穿透工具可以实现公网实…

C语言 ——— 学习并使用条件编译指令

目录 何为条件编译指令 常见的条件编译指令 学习条件编译指令 使用条件编译指令 在程序预编译阶段,条件编译指令的代码转换 多分支的条件编译指令 何为条件编译指令 在编译一个程序的时候,如果要将一条语句(一组语句)选择编…

Redis学习Day2——Redis基础使用

扩展阅读推荐: Redis 教程 | 菜鸟教程 (runoob.com) 黑马程序员Redis入门到实战教程_哔哩哔哩_bilibili 细说 Redis 九种数据类型和应用场景_redis数据类型及应用场景-CSDN博客 一、命令篇 1.1 Redis的命令分类 Redis是典型的K-V型数据库,key标识字符串,而value包含了很…

React Native 0.76版本发布

关于 React Native 的 New Architecture 概念,最早应该是从 2018 年 RN 团队决定重写大量底层实现开始,因为那时候 React Native 面临各种结构问题和性能瓶颈,最终迫使 RN 团队开始进行重构。 而从 React Native 0.68 开始,New A…

在B端管理系统中,复杂或者DIY功能,都依赖哪些编辑器/设计器

一、引言 在当今的商业环境中,B 端管理系统扮演着至关重要的角色。这些系统不仅需要满足企业日常的运营管理需求,还需要具备足够的灵活性和可扩展性,以适应不断变化的业务需求。而在实现复杂或可 DIY 的功能方面,各种编辑器和设计…

C++VTK鼠标框选局部删除三维网格

程序示例精选 CVTK鼠标框选局部删除三维网格 如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助! 前言 这篇博客针对《CVTK鼠标框选局部删除三维网格》编写代码,代码整洁,规则,易…

暗星·Java实战之进阶旅游网

简介 暗星旅游网,是一个分为管理员端和用户端的项目,有权限分离认证,管理员端(后台)进行旅游产品的维护,主要功能有:管理员管理,角色管理,权限管理,认证和授…

Python怎么发送邮件:基础步骤与详细教程?

Python怎么发送邮件带附件?怎么使用Python发送邮件? 无论是工作中的通知、报告,还是生活中的问候、邀请,电子邮件都扮演着不可或缺的角色。那么,Python怎么发送邮件呢?AokSend将详细介绍Python发送邮件的基…

三、排序算法

文章目录 一、排序算法的介绍二、算法的时间复杂度2.1 基本介绍2.2 时间频度2.3 时间复杂度的表示2.4 算法的平均时间复杂度和最坏时间复杂度 三、算法的空间复杂度四、排序算法4.1 交换排序4.1.1 冒泡排序4.1.2 快速排序 4.2 选择排序4.2.1 简单选择排序4.2.2 堆排序 4.3 插入…

基于Llama 3的最强开源医疗AI模型发布,刷新榜单

转自:火星AIGC 一家名为Saama AI Labs发布了他们基于Llama 3 微调的开源医疗AI大模型OpenBioLLM-Llama3-70B 和 OpenBioLLM-Llama3-8B,刷新抱抱脸上的医疗大模型榜单,并占据榜首。其在生物医学领域的测试性能超越 GPT-4、Gemini、Meditron-7…

浙大数据结构:04-树6 Complete Binary Search Tree

这道题利用了完全二叉树的性质,我也参考了一些代码写的。 (自己一开始写了别的方法,但一直过不了最后一个测试点,红温了) 机翻: 1、条件准备 用vector存输入的数据,另一个数组存输出的结果&a…

文心一言 VS 讯飞星火 VS chatgpt (344)-- 算法导论23.2 3题

三、对于稀疏图 G ( V , E ) G(V,E) G(V,E),这里 ∣ E ∣ Θ ( V ) |E|Θ(V) ∣E∣Θ(V),使用斐波那契堆实现的Prim算法是否比使用二叉堆实现的算法更快?对于稠密图又如何呢? ∣ E ∣ |E| ∣E…

FPGA技术赋能云数据中心:提高性能与效率

随着现代科技的迅猛发展和大数据时代的推动,云数据中心已成为众多企业的核心基础设施。然而,伴随数据处理需求的不断增长,传统硬件架构在性能、功耗和灵活性方面面临诸多挑战。为了解决这些问题,FPGA(现场可编程门阵列…

辽宁汇聚公益慈善力量,绿葆网络助力辽宁绿色生态建设,彰显企业大爱

9月5日,于辽宁省沈阳市隆重举行的“中华慈善日”主题宣传活动暨“山海有情 天辽地宁”即开型福利彩票发行、“生态公益林”项目启动仪式上,广州绿葆网络发展有限公司作为受邀企业之一,积极履行社会责任,向辽宁省慈善联合总会捐赠了…

坐牢第三十六天(QT)

自定义QQ界面 wedget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QDebug> //qt中信息调试类 #include <QIcon> //图标类 #include <QPushButton>//按钮类 #include <QLabel> //标签类 #include <QMovie> //动图类…