leetcode(2):Add Two Numbers
2017-11-07 11:51
459 查看
You are given two non-empty linked lists representing two non-negative integers. 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.
You may assume the two numbers do not contain any leading zero, except the number 0 itself.
Input: (2 -> 4 -> 3) + (5 -> 6 -> 4)
Output: 7 -> 0 -> 8
大致的意思是两个列表相加 2+5 4+6 3+4 至于最后是 0 8 因为加起来是 7 10 7 (10 进位 成为7 0 8) (注意进位)
源代码
文章地址:http://www.haha174.top/article/details/256262
源码地址:https://github.com/haha174/daylx.git
You may assume the two numbers do not contain any leading zero, except the number 0 itself.
Input: (2 -> 4 -> 3) + (5 -> 6 -> 4)
Output: 7 -> 0 -> 8
大致的意思是两个列表相加 2+5 4+6 3+4 至于最后是 0 8 因为加起来是 7 10 7 (10 进位 成为7 0 8) (注意进位)
源代码
package AddTwoNumbers; public class Main { public static void main(String args[]) { ListNode l=new ListNode(2); ListNode h=new ListNode(5); ListNode l1=new ListNode(4); ListNode l2=new ListNode(3); ListNode l3=new ListNode(6); ListNode l4=new ListNode(4); l.next=l1; l1.next=l2; h.next=l3; l3.next=l4; print( addTwoNumbers(l,h)); } public static ListNode addTwoNumbers(ListNode c1, ListNode c2) { ListNode sen = new ListNode(0);// 保存 生成 新的列表的 根节点引用 ListNode d = sen; int sum = 0; while (c1 != null || c2 != null) { sum /= 10;//进位处理 if (c1 != null) { sum += c1.val; c1 = c1.next; } if (c2 != null) { sum += c2.val; c2 = c2.next; } d.next = new ListNode(sum % 10); d = d.next; } if (sum / 10 >= 1)//处理最后遗留的进位 d.next = new ListNode(sum / 10); return sen.next; //当前的根节点 是空的 在上文中创建并没有赋值 真正的根节点是他的下一个节点 } public static void print(ListNode c1) { while (c1 != null) { System.out.print(c1.val); if(c1.next!=null) { System.out.print("->"); } c1=c1.next; } } } class ListNode { int val; ListNode next; ListNode(int x) { val = x; } }
文章地址:http://www.haha174.top/article/details/256262
源码地址:https://github.com/haha174/daylx.git
相关文章推荐
- leetcode - 2.addTwoNumbers
- Leetcode [Add Two Numbers]
- LeetCode:Add Two Numbers
- [LeetCode] Add Two Numbers 两个数字相加
- LeetCode Add Two Numbers
- leetcode 59: Add Two Numbers
- LeetCode:Add Two Numbers
- 【LeetCode】Add Two Numbers
- 【LeetCode】2 Add Two Numbers
- [LeetCode] Add Two Numbers
- leetcode--Add Two Numbers
- Leetcode#2||Add Two Numbers
- leetcode - Add Two Numbers
- 【LeetCode练习题】Add Two Numbers
- LeetCode 2.Add Two Numbers
- [LeetCode]2. Add Two Numbers用链表逆序存储的两个数相加
- Leetcode - Add Two Numbers
- leetcode 2 -- Add Two Numbers
- Add two numbers [LeetCode]
- [leetcode]Add Two Numbers