zoukankan      html  css  js  c++  java
  • Add Two Numbers

    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

    /**
     * Definition for singly-linked list.
     * public class ListNode {
     *     int val;
     *     ListNode next;
     *     ListNode(int x) {
     *         val = x;
     *         next = null;
     *     }
     * }
     */
    public class Solution {
        public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
            ListNode p1 = l1;
            ListNode p2 = l2;
            ListNode h = new ListNode(0);//创建一个头结点
            ListNode r = h;//设立一个尾指针
            int carry = 0;//进位
            int sum = 0;//对应位及进位相加之和
            while(p1!=null||p2!=null) {
                
                if(p1!=null&&p2!=null){
                    sum = p1.val+p2.val+carry;
                    p1 = p1.next;
                    p2 = p2.next;
                }
                
                else {
                    if(p1==null) {
                        sum = p2.val+carry;
                        p2 = p2.next;
                    }
                    else {
                        sum = p1.val+carry;
                        p1 = p1.next;
                    }
                }
                
                if(sum>=10) {
                    sum = sum-10;
                    carry = 1;
                }
                else {
                    carry = 0;
                }
                ListNode p = new ListNode(sum);
                r.next = p;
                r = p;
            }
            if(carry==1) {
                ListNode p = new ListNode(1);
                r.next = p;
                r = p;
            }
            return h.next;
        }
    }
  • 相关阅读:
    寒假作业3:简化电梯优化
    线段树2
    线段树1
    数字游戏(二)
    P1352 没有上司的舞会
    加分二叉树
    数字转换
    BLO-Blockade
    树上倍增法求LCA
    种西瓜
  • 原文地址:https://www.cnblogs.com/mrpod2g/p/4311538.html
Copyright © 2011-2022 走看看