链式A+B
2015-08-24 19:00
267 查看
题目描述
有两个用链表表示的整数,每个结点包含一个数位。这些数位是反向存放的,也就是个位排在链表的首部。编写函数对这两个整数求和,并用链表形式返回结果。给定两个链表ListNode* A,ListNode* B,请返回A+B的结果(ListNode*)。
测试样例:
{1,2,3},{3,2,1}
返回:{4,4,4}
public class Plus { //链式A+B public ListNode plusAB(ListNode a, ListNode b) { // write code here if(a == null && b == null){ return null; } if(a == null)return b; if(b == null)return a; ListNode res = new ListNode(0); ListNode ap = a; ListNode bp = b; ListNode result = res; int flag = 0; int value; int val1; int val2; while(ap!=null || bp!=null || flag!=0){ val1 = (ap == null ? 0 : ap.val); val2 = (bp == null ? 0 : bp.val); value = val1 + val2 + flag; flag = value/10; ListNode node = new ListNode(value%10); res.next = node; res = res.next; ap = (ap == null ? null:ap.next); bp = (bp == null ? null:bp.next); } return result.next; } }
[/code]
相关文章推荐
- 【转】我的华为面试经历——技术服务
- 排序算法小结
- IOS第12天(2,UINavigationController导航控制器)
- C/C++之回调函数
- NSRegularExpression的使用,获取所有符合条件的结果
- 高精度减法,高精度乘法
- STL - vector algorithm
- Ubuntu下Sublime Text 3无法输入中文的解决方案
- Spring现有版本和下载地址
- ZOJ 3888 Twelves Monkeys
- 云恋社区官方地址
- 数据库测试点
- POJ 1200 Crazy Search(简单哈希)
- Html5新增小元素:figure与figurecaption address progress meter mark details与summary
- NYOJ 128 前缀式计算
- RecyclerView 列表控件中简单实现时间线
- 事务的含义理解
- 完数(hdu1406)枚举
- c语言字符串操作,及常用函数
- ZOJ 3885 The Exchange of Items