LintCode_167 链表求和
2024-09-06 13:29:44
题目
你有两个用链表代表的整数,其中每个节点包含一个数字。数字存储按照在原来整数中相反
的顺序,使得第一个数字位于链表的开头。写出一个函数将两个整数相加,用链表形式返回和。
样例
给出两个链表 3->1->5->null
和 5->9->2->null
,返回 8->0->8->null
思路
当前位相加 考虑进位
C++代码
ListNode *addLists(ListNode *l1, ListNode *l2) {
// write your code here
ListNode* head = NULL;
ListNode*p1, *p2, *q, *p;
q = head;
p1 = l1;
p2 = l2;
int cp = 0;
int t1;
int t2;
while (p1 || p2)
{
if (p1)
{
t1 = p1->val;
p1 = p1->next;
}
else t1 = 0;
if (p2)
{
t2 = p2->val;
p2 = p2->next;
}
else t2 = 0;
int sum = t1 + t2 + cp;
cp = sum / 10;
if (sum >= 10)
{
sum = sum % 10;
}
ListNode* p = new ListNode(sum);
if (!head) head = q = p;
else q = q->next = p;
}
if (cp)
{
p = new ListNode(cp);
q = q->next = p;
}
return head;
}
最新文章
- sql server实现自定义分割月功能
- CodeForce Round#49 untitled (Hdu 5339)
- 李洪强经典iOS面试题11
- Hibernate学习笔记--环境搭建及运行
- C#中隐式类型本地变量var
- jQuery弹出窗口完整代码
- Working with bounded Task Flows
- U盘制作系统盘的方法:
- 一键安装Davinci
- CAST()函数可以进行数据类型的转换。
- 用word发布CSDN文章
- css样式的书写顺序及原理
- Django的model form组件
- java.lang.IllegalStateException: Ambiguous mapping found
- springboot发送邮件
- spring cloud: Hystrix(五):如禁止单个FeignClient使用hystrix
- ESP8266 问题
- 转:C#实现office文档转换为PDF或xps的一些方法
- 做游戏长知识------基于行为树与状态机的游戏AI(一)
- asp.net图片上传代码