2181. 合并零之间的节点

2181. 合并零之间的节点


题目链接:2181. 合并零之间的节点

代码如下:

cpp 复制代码
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode() : val(0), next(nullptr) {}
 *     ListNode(int x) : val(x), next(nullptr) {}
 *     ListNode(int x, ListNode *next) : val(x), next(next) {}
 * };
 */
class Solution 
{
public:
    ListNode* mergeNodes(ListNode* head) 
    {
       ListNode* Head=new ListNode();  
       ListNode* p=Head;

       while(head!=nullptr)
       {
            if(head->val==0)
            {
                head=head->next;
                int sum=0;
                while(head&&head->val!=0)
                {
                    sum+=head->val;
                    head=head->next;
                }
                if(sum==0)
                {
                    continue;
                }
                ListNode* node=new ListNode(sum);
                p->next=node;
                p=node;
            }
       }
       return Head->next;
    }
};
相关推荐
沐怡旸3 小时前
【底层机制】std::string 解决的痛点?是什么?怎么实现的?怎么正确用?
c++·面试
River4166 小时前
Javer 学 c++(十三):引用篇
c++·后端
感哥9 小时前
C++ std::set
c++
侃侃_天下9 小时前
最终的信号类
开发语言·c++·算法
博笙困了9 小时前
AcWing学习——差分
c++·算法
青草地溪水旁10 小时前
设计模式(C++)详解—抽象工厂模式 (Abstract Factory)(2)
c++·设计模式·抽象工厂模式
青草地溪水旁10 小时前
设计模式(C++)详解—抽象工厂模式 (Abstract Factory)(1)
c++·设计模式·抽象工厂模式
感哥10 小时前
C++ std::vector
c++
zl_dfq10 小时前
C++ 之【C++11的简介】(可变参数模板、lambda表达式、function\bind包装器)
c++
每天回答3个问题10 小时前
UE5C++编译遇到MSB3073
开发语言·c++·ue5