题解 | #大数加法#

大数加法

http://www.nowcoder.com/practice/11ae12e8c6fe48f883cad618c2e81475

1.字符串当作数组处理,从后向前遍历
2.对应位置相加,字符转数字,数字转字符
3.进位
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     * 计算两个数之和
     * @param s string字符串 表示第一个整数
     * @param t string字符串 表示第二个整数
     * @return string字符串
     */
    string solve(string s, string t) {
        // write code here
        string res = "";
        int num = 0;
        int i=s.length()-1,j=t.length()-1;
        while(i>=0 || j>=0 || num != 0){
            num += (i>=0 ? (s[i--] - '0') : 0);
            num += (j>=0 ? (t[j--] - '0') : 0);
            char c = (num % 10 + '0');
            res = c + res;
            num /= 10;
        }
        return res;
    }
};


全部评论

相关推荐

头顶尖尖的程序员:我也是面了三四次才放平心态的。准备好自我介绍,不一定要背熟,可以记事本写下来读。全程控制语速,所有问题都先思考几秒,不要急着答,不要打断面试官说话。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务