您现在的位置是:首页 > 编程 > 

链表求和问题(面试题)

2025-07-24 09:11:32
链表求和问题(面试题) 一·题目:leetcode题目链接 :面试题 02.05. 链表求和 - 力扣(LeetCode)二·思路汇总:想到这道题,可能看起来第一思路就是把它们翻转过来,换成整型,再次加,然后转成字符串再次翻转就可,但是这就是这道题的用意所在,它会在最后限制很长的链表节点,直接给pass掉就完了。一开始啥也没写写了个寂寞:先是int然后换了long int照样不行,只好换思路:故不

链表求和问题(面试题)

一·题目:

leetcode题目链接 :面试题 02.05. 链表求和 - 力扣(LeetCode)

二·思路汇总:

想到这道题,可能看起来第一思路就是把它们翻转过来,换成整型,再次加,然后转成字符串再次翻转就可,但是这就是这道题的用意所在,它会在最后限制很长的链表节点,直接给pass掉就完了。

一开始啥也没写写了个寂寞:先是int然后换了long int照样不行,只好换思路:

故不妨发现,如果正序相加,余数保留,商进到下一个对应的节点位置依次完成相加,最后依次相连即可。

三·解答代码:代码语言:javascript代码运行次数:0运行复制
class Solution {
public:
   
     
    Listode* addTwoumbers(Listode* l1, Listode* l2) {
        //建立头结点链接要返回的剩下的节点:
            Listode head(0);
            Listode *phead=&head;
            Listode*cur=phead;
            int discuss=0;//商
            while(l1||l2||discuss!=0){//特殊用例如:l1=[5];l2=[5];此时l1与l2都为空,但是还有个商数1,要再次进入while,故discuss不为0还要进入
            //有一个链表为空,可把他的值想象成0,然后与另一个链表节点值反向相加:
                int val1=l1?l1->val:0;
                int val2=l2?l2->val:0;
                int sum=val1+val2+discuss;
                  cur->next=new Listode(sum%10);
                  cur=cur->next;
                discuss=sum/10;
                //这里可能有一个走到了空故判断一下:
                if(l1) l1=l1->next;
                if(l2) l2=l2->next;

                    
            }
            return phead->next;




    }
    };
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2025-01-2,如有侵权请联系 cloudcommunity@tencent 删除链表字符串intpublicsum

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1131974.html

相关标签:无
上传时间: 2025-07-18 19:48:54
留言与评论(共有 18 条评论)
本站网友 张灿
8分钟前 发表
分享自作者个人站点/博客
本站网友 文胸哪个牌子好
11分钟前 发表
然后与另一个链表节点值反向相加: int val1=l1?l1->val
本站网友 巨资
9分钟前 发表
商进到下一个对应的节点位置依次完成相加
本站网友 网易轻松一刻
19分钟前 发表
商进到下一个对应的节点位置依次完成相加
本站网友 今日金银价
5分钟前 发表
商进到下一个对应的节点位置依次完成相加
本站网友 深圳名雕装饰
25分钟前 发表
只好换思路:故不妨发现
本站网友 中国华电集团公司
30分钟前 发表
可把他的值想象成0
本站网友 易币网
19分钟前 发表
但是这就是这道题的用意所在
本站网友 北京虚拟主机租用
3分钟前 发表
商进到下一个对应的节点位置依次完成相加
本站网友 javas
18分钟前 发表
再次加
本站网友 动态电脑桌面壁纸
9分钟前 发表
最后依次相连即可
本站网友 海岸影城
2分钟前 发表
Listode* l2) { //建立头结点链接要返回的剩下的节点: Listode head(0); Listode *phead=&head; Listode*cur=phead; int discuss=0;//商 while(l1||l2||discuss!=0){//特殊用例如:l1=[5];l2=[5];此时l1与l2都为空
本站网友 抚州二手房
28分钟前 发表
分享自作者个人站点/博客
本站网友 银大贵金属
1分钟前 发表
原始发表:2025-01-2
本站网友 卫生间隔板
5分钟前 发表
Listode* addTwoumbers(Listode* l1
本站网友 玛咖的功效
25分钟前 发表
只好换思路:故不妨发现
本站网友 骨碎补的功效
18分钟前 发表
0; int val2=l2?l2->val