c# leetcode 两数相加 AddTwoNumbers

public ListNode AddTwoNumbers(ListNode l1, ListNode l2)
        {
            ListNode u = null, tmp = null;
            int m = 0, n = 0;
            while (l1 != null || l2 != null)
            {
                n = (l1 != null ? l1.val : 0) + (l2 != null ? l2.val : 0) + m;
                if (n >= 10) { n = n - 10; m = 1; }
                else { m = 0; }
                if (u == null)
                {
                    u = new ListNode(n);
                    tmp = u;
                }
                else
                {
                    tmp.next = new ListNode(n);
                    tmp = tmp.next;
                }
                l1 = (l1 != null && l1.next != null) ? l1.next : null;
                l2 = (l2 != null && l2.next != null) ? l2.next : null;
            }
            if (m == 1) { tmp.next = new ListNode(1); }
            return u;
        }

猜你喜欢

转载自www.cnblogs.com/huanyun/p/11850526.html
今日推荐