[LeetCode-2]Add Two Numbers(java)
来源:互联网 发布:日文电影字幕翻译软件 编辑:程序博客网 时间:2024/05/20 02:30
You are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a linked list.
Input: (2 -> 4 -> 3) + (5 -> 6 -> 4)
Output: 7 -> 0 -> 8
思路:单链表相加,大于10进1
采用递归的方法:
如果l1与l2都为空,返回进位;
如果l1为空,l2不空,返回l2的值和进位的和;
如果l1和l2都不为空,返回两者及进位的和.
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */public class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { return help(l1,l2,0); } //递归 //都为null,返回进位 //有一个为null,返回不为null的值加进位 //都不为null,返回两者相加加进位的值 public ListNode help(ListNode l1,ListNode l2,int carry){ if(l1==null && l2==null) return carry==0?null:new ListNode(carry); if(l1==null && l2!=null) l1=new ListNode(0); if(l2==null && l1!=null) l2=new ListNode(0); int sum=l1.val+l2.val+carry; ListNode l3 = new ListNode(sum%10); l3.next=help(l1.next,l2.next,sum/10); return l3; }}
0 0
- [LeetCode Java] 2 Add Two Numbers
- 【leetcode with java】2 Add Two Numbers
- * LeetCode【2】. Add Two Numbers--java实现
- Leetcode 2 Add Two Numbers Java
- LeetCode 2 - Add Two Numbers ( JAVA )
- [LeetCode-2]Add Two Numbers(java)
- leetcode#2-Add Two Numbers-java
- [Leetcode] Add Two Numbers (Java)
- Add Two Numbers LeetCode Java
- 【Leetcode】Add two numbers JAVA
- Leetcode Java Add Two Numbers
- Java Leetcode Add Two Numbers
- [LeetCode][Java] Add Two Numbers
- LeetCode : Add Two Numbers [java]
- leetcode:Add Two Numbers 【Java】
- Java-LeetCode-Add Two Numbers
- Add Two Numbers LeetCode Java
- [LeetCode]Add Two Numbers(Java)
- Centos 6 上安装R-3.3.1
- [均摊 线段树] UOJ #228. 基础数据结构练习题
- 4-1 Deque (25分)
- 在Tomcat中部署WEB应用
- ci 知识点总结
- [LeetCode-2]Add Two Numbers(java)
- [知识点滴]关于CSS Reset 那些事(一)
- C语言 猜数字游戏
- SQL中Group By的使用
- 第四周项目5——循环双链表应用
- HDU1800-Flying to the Mars
- UVa - 442 - Matrix Chain Multiplication(用栈实现简单的表达式解析)
- 剑指Offer面试题41:求和为s的两个数字;求和为s的连续正数序列 Java实现
- OpenCV 鼠标、滑动条交互式操作