leetcode 002.两数相加(链表)
发布日期:2021-04-30 21:10:05
浏览次数:105
分类:精选文章
本文共 1245 字,大约阅读时间需要 4 分钟。
?????
??????????????????????????????????????????????????????????????????????????????
????????????????????????n1?n2?????carry???????n1 + n2 + carry?????????????????(n1 + n2 + carry) % 10????????carry = (n1 + n2 + carry) / 10?
??????????????????????????????0?
??????????????carry > 0????????????????????????carry?
??
public class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { ListNode head = null, tail = null; int carry = 0; while (l1 != null || l2 != null) { int n1 = l1 != null ? l1.val : 0; int n2 = l2 != null ? l2.val : 0; int sum = n1 + n2 + carry; if (head == null) { head = tail = new ListNode(sum % 10); } else { tail.next = new ListNode(sum % 10); tail = tail.next; } carry = sum / 10; if (l1 != null) { l1 = l1.next; } if (l2 != null) { l2 = l2.next; } } if (carry > 0) { tail.next = new ListNode(carry); } return head; }} ?????
- ??????O(max(m, n))???m?n????????????????????????????????????O(1)????
- ??????O(1)???????????????
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2026年06月09日 14时21分28秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!