leetcode_2816. 翻倍以链表形式表示的数字

devtools/2025/1/12 13:46:27/

2816. 翻倍以链表形式表示的数字 - 力扣(LeetCode)

搜先看到这个题目 链表的节点那么多 已经远超longlong能够表示的范围 那么暴力解题 肯定是不可以的了

我们可以想到 乘法运算中 就是从低位到高位进行计算 刚开始 我想先反转链表 然后在计算 然后在进行反转 得到一个新的结果 但是这样子耗费时间太多了 

然后我还想到可以先把链表中的数先组成一个数 然后在进行计算 但是这个数远超longlong能表示的范围

此时 我们想到 链表的前一个节点的数与后一个节点的数有关 那么我们可以利用递归回溯来解决这一个问题

/*** 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:void doDouble(ListNode* head, int* cap) {if (head == NULL) {*cap = 0;return;}int val;doDouble(head->next, &val);head->val = head->val * 2 + val;*cap = head->val / 10;head->val %= 10;}ListNode* doubleIt(ListNode* head) {int val;doDouble(head, &val);return val == 0 ? head : new ListNode(val, head);}
};

其中 

cap是指向下一个节点的val的指针 在递归过程中 使用cap来看是否需要进位 并且将值返还给val变量


http://www.ppmy.cn/devtools/149880.html

相关文章

(九)大语言模型交互中的角色定义与区分

📢📢📢 大家好,我是云楼Yunlord,CSDN博客之星人工智能领域前三名,多年人工智能学习工作经验,一位兴趣稀奇古怪的【人工智能领域博主】!!!😜&#…

React项目中利用json-server实现数据Mock

json-server实现数据Mock 项目中安装json-server npm i -D json-server --legacy-peer-deps准备一个json文件 建立一个server文件夹,建立一个data.json文件。 以下为一个例子: {"ka": [{"type": "pay","money&qu…

【Rust自学】11.9. 单元测试

喜欢的话别忘了点赞、收藏加关注哦(加关注即可阅读全文),对接下来的教程有兴趣的可以关注专栏。谢谢喵!(・ω・) 11.9.1. 测试的分类 Rust把测试分为两类,一个是单元测试,一个是集成…

Ruby语言的软件开发工具

Ruby语言的软件开发工具探索 Ruby语言以其简洁优雅的语法和强大的面向对象特性而受到广泛欢迎。作为一种动态、反射性强的编程语言,Ruby具有很高的开发效率,适用于各种类型的开发,从Web应用到命令行工具,都能得到很好的支持。在R…

网络安全漏洞学习与企业挖掘实战:从基础概念到操作步骤全解析

该文章是个人学习笔记,学习的相关视频是来自蚁景网安的百里老师的相关视频 内容简介 什么是网络安全技术中的漏洞学习黑客漏洞从哪里开始起步针对企业的漏洞挖掘应该如何去做漏洞挖掘的步骤和相关的概念收集企业信息的基本思路的和流程 1.什么是网络安全技术中的漏洞…

左神算法基础巩固--4

文章目录 图图的表示图的遍历图的宽度优先遍历图的深度优先遍历 解题 图 在面试中图的考察并不寻常,但并不是没有,所以我们也需要学习学习。 图的题目之所以会显得比较难其主要原因便是我们不知道如何正确表示一个图即用一个合适的数据结构将题目中出现…

STM32-DMA数据转运

注:DMA对应的库函数文件讲解 DMA_GetITStatus(uint32_t DMAy_IT) 是一个用于检查DMA(直接存储器访问)中断状态的库函数。它通常在使用STM32系列微控制器及其标准外设库时被调用。此函数的主要作用是返回指定DMA通道的特定中断标志的状态&…

某漫画网站JS逆向反混淆流程分析

文章目录 1. 写在前面1. 接口分析2. 反混淆分析 【🏠作者主页】:吴秋霖 【💼作者介绍】:擅长爬虫与JS加密逆向分析!Python领域优质创作者、CSDN博客专家、阿里云博客专家、华为云享专家。一路走来长期坚守并致力于Pyth…