【Lintcode】655. Add Strings

題目地址:

https://www.lintcode.com/problem/add-strings/description

給定兩個字符串形式的正整數,求其和並返回相同格式的字符串。直接模擬兩個正整數相加即可。代碼如下:

public class Solution {
    /**
     * @param num1: a non-negative integers
     * @param num2: a non-negative integers
     * @return: return sum of num1 and num2
     */
    public String addStrings(String num1, String num2) {
        // write your code here
        StringBuilder sb = new StringBuilder();
        int id1 = num1.length() - 1, id2 = num2.length() - 1;
        int cur = 0;
        while (id1 >= 0 || id2 >= 0) {
            if (id1 >= 0) {
                cur += num1.charAt(id1--) - '0';
            }
            if (id2 >= 0) {
                cur += num2.charAt(id2--) - '0';
            }
            sb.append(cur % 10);
            cur /= 10;
        }
        if (cur == 1) {
            sb.append(1);
        }
        
        return sb.reverse().toString();
    }
}

時空複雜度O(n)O(n)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章