博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[leetcode] Add Two Numbers *
阅读量:7157 次
发布时间:2019-06-29

本文共 1874 字,大约阅读时间需要 6 分钟。

1 /* 2  * Easy 3  * 4  * @author: HZT 5  * @date: 2013-3-7 6  */ 7  8 #include 
9 using namespace std;10 11 struct ListNode{12 int val;13 ListNode *next;14 ListNode(int x) : val(x), next(NULL) {}15 };16 17 class Solution {18 public:19 ListNode *addTwoNumbers(ListNode *l1, ListNode *l2) {20 // Start typing your C/C++ solution below21 // DO NOT write int main() function22 if(!l1) return l2;23 if(!l2) return l1;24 25 ListNode* ans = NULL;26 ListNode* tail = new ListNode(0);27 int carry = 0;28 29 while(true){30 int val = (l1->val + l2->val + carry) % 10;31 carry = (l1->val + l2->val + carry) / 10;32 33 tail->next = new ListNode(val);34 tail = tail->next;35 if(!ans) ans = tail;36 37 l1 = l1->next;38 l2 = l2->next;39 40 if(!l1 || !l2){41 if(!l2) l2 = l1;42 while(l2){43 int val = (l2->val + carry) % 10;44 carry = (l2->val + carry) / 10;45 46 tail->next = new ListNode(val);47 tail = tail->next;48 if(!ans) ans = tail;49 50 l2 = l2->next;51 }52 53 if(carry){54 tail->next = new ListNode(carry);55 tail = tail->next;56 if(!ans) ans = tail;57 }58 59 break;60 }61 }62 63 return ans;64 }65 };66 67 int main(){68 Solution* s = new Solution();69 70 ListNode* l1 = new ListNode(9);71 ListNode* l2 = new ListNode(9);72 73 ListNode* ans = s->addTwoNumbers(l1, l2);74 while(ans){75 cout << ans->val;76 ans = ans->next;77 }78 79 return 0;80 }

 

转载地址:http://hlhgl.baihongyu.com/

你可能感兴趣的文章
主动模式和被动模式
查看>>
分类、回归
查看>>
Dubbo源码阅读笔记(一)
查看>>
List跟踪源码个人记录
查看>>
企业级 SpringCloud 教程 (七)高可用的分布式配置中心(Spring Cloud Config)
查看>>
区块链最全书单|深聊了50个微信群,学习区块链必读这20本书
查看>>
20个热门在线少儿编程网站【2019】
查看>>
Netty 即时通信 后端 (五)
查看>>
没有内涵段子可以刷了,利用Python爬取段友之家贴吧图片和小视频(含源码)
查看>>
打造极致性能数据库中间件丨LVS+Keepalive+华为云DDM之理论篇
查看>>
分布式微服务云架构开发Web应用
查看>>
架构的代码结构
查看>>
MaxCompute推出面向开发者的专属版本,普惠大数据开发者
查看>>
MySQL 在高并发下的 订单撮合 系统使用 共享锁 与 排他锁 保证数据一致性
查看>>
JavaScript数据类型检测总结
查看>>
带你深入探解Java的分级引用模型
查看>>
@Autowired的使用:推荐对构造函数进行注释
查看>>
Navicat使用教程:获取MySQL中的行数(第1部分)
查看>>
IT兄弟连 Java Web教程 经典案例2
查看>>
Ember.js 入门指南——路由简介
查看>>