leetcode: add two numbers , hash search solution, java. O(n)
来源:互联网 发布:sql数据库可视化工具 编辑:程序博客网 时间:2024/06/05 11:46
Add two numbers https://leetcode.com/submissions/detail/25795501/
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
My Solution:
public class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { ListNode result,k; int sum=0, over=0; sum=l1.val+l2.val; over=sum/10; sum=sum%10; result = new ListNode(sum); k=result; l1=l1.next; l2=l2.next; while(l1!=null && l2!=null){ sum=l1.val+l2.val+over; over=sum/10; sum=sum%10; k.next=new ListNode(sum); k=k.next; l1=l1.next; l2=l2.next; } while(l1!=null){ sum=l1.val+over; over=sum/10; sum=sum%10; k.next=new ListNode(sum); k=k.next; l1=l1.next; } while(l2!=null){ sum=l2.val+over; over=sum/10; sum=sum%10; k.next=new ListNode(sum); k=k.next; l2=l2.next; } if(over!=0){ k.next=new ListNode(over); } return result;}}
A brief Solution:
public class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { ListNode prev = new ListNode(0); ListNode head = prev; int carry = 0; while (l1 != null || l2 != null || carry != 0) { ListNode cur = new ListNode(0); int sum = ((l2 == null) ? 0 : l2.val) + ((l1 == null) ? 0 : l1.val) + carry; cur.val = sum % 10; carry = sum / 10; prev.next = cur; prev = cur; l1 = (l1 == null) ? l1 : l1.next; l2 = (l2 == null) ? l2 : l2.next; } return head.next; }}
0 0
- leetcode: add two numbers , hash search solution, java. O(n)
- leetcode: two sum, hash search solution, java. O(n)
- [LeetCode] Add Two Numbers, Solution
- [LeetCode 2] Add Two Numbers Solution
- LeetCode #2 Add Two Numbers Cpp Solution
- [Leetcode] 2. Add Two Numbers QuestionEditorial Solution
- [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)
- 【leetcode】Add Two Numbers-----Java
- utf-8 unicode 各种编码的区别与联系
- 进程间通信简单实现之SendMessage/PostMessage
- jpa2 subquery
- (1.5.2.3)编程之美 寻找发帖水王 扩展问题
- KVM+QEMU世界中的pci总线与virtio总线 module_call_init pc_machine_init
- leetcode: add two numbers , hash search solution, java. O(n)
- [Django框架学习] URLconf的映射和模版继承
- Bundle in IOS
- UVA - 10004 - Bicoloring (简单图论-着色判断)
- lua学习之环境配置
- 判断一个单链表是否存在环
- 浅谈双线程dp (nyoj61 nyoj712)经典【传字条】和【探 寻 宝 藏】
- css+jquery导航列表
- P122 14