欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【String-easy】415. Add Strings两个字符串对应位置相加(大数相加)

程序员文章站 2022-07-13 17:48:30
...

1. 题目原址

https://leetcode.com/problems/add-strings/

2. 题目描述

【String-easy】415. Add Strings两个字符串对应位置相加(大数相加)

3. 题目大意

给定两个字符串,将字符串对应位置相加,然后返回成字符串

4. 解题思路

从后往前遍历。然后使用StringBuilder类型的变量来存储每一位的相加结果,

5. AC代码

class Solution {
    public String addStrings(String num1, String num2) {
        int length1 = num1.length() - 1;
        int length2 = num2.length() - 1;
        int temp = 0;
        StringBuilder sb = new StringBuilder();
        while(length1 >= 0 || length2 >= 0 || temp > 0) {
            // 从串的后面获取字符
            int a = length1 >= 0 ? num1.charAt(length1 --) - '0':0;
            int b = length2 >= 0 ? num2.charAt(length2 --) - '0':0;
            // 计算两个串对应位置的字符相加得到的结果 
            int yushu = (a + b + temp) % 10;
            // 得到相加后的高位数,如果是两位数12的话,得到的是1
            temp = (a + b + temp) / 10;
            sb.insert(0,String.valueOf((char)(yushu + '0')));
        }
        return sb.toString();
    }
}

6. 相似题型

【1】989. Add to Array-Form of Integer 解题原址:https://blog.csdn.net/xiaojie_570/article/details/91829848
【2】 66. Plus One 题目原址:https://leetcode.com/problems/plus-one/
【3】 67. Add Binary 题目原址:https://leetcode.com/problems/add-binary/
【4】 415. Add Strings 题目原址:https://leetcode.com/problems/add-strings/