前言:
此时各位老铁们对“java数字相加的算法”可能比较讲究,咱们都需要了解一些“java数字相加的算法”的相关资讯。那么小编也在网络上汇集了一些对于“java数字相加的算法””的相关知识,希望兄弟们能喜欢,姐妹们快快来学习一下吧!#头条创作挑战赛#
3妹:2哥,今天周日,出去玩一玩,爬爬山怎么样。
2哥:还出去玩呢,现在全国疫情又反复了, 前段时间上海疫情刚控制住,现在宿州泗县和无锡疫情又爆发了,还是注意一些,不要随便出去走动了。
3妹:哦,是哦,普通公民能做的就是尽量居家,不能防疫添麻烦。
2哥:对,还是在家打会儿游戏吧,来,带你打野。
3妹:切,我对打游戏没兴趣,我还是做几道题,然后看我的韩剧吧
题目:
给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和并同样以字符串形式返回。
你不能使用任何內建的用于处理大整数的库(比如 BigInteger), 也不能直接将输入的字符串转换为整数形式。
示例 1:
输入:num1 = "11", num2 = "123"
输出:"134"
示例 2:
输入:num1 = "456", num2 = "77"
输出:"533"
示例 3:
输入:num1 = "0", num2 = "0"
输出:"0"
提示:
1 <= num1.length, num2.length <= 10^4
num1 和num2 都只包含数字 0-9
num1 和num2 都不包含任何前导零
java代码:
class Solution { public String addStrings(String num1, String num2) { int i = num1.length() - 1; int j = num2.length() - 1; int carry = 0; StringBuilder ans = new StringBuilder(); while (i >= 0 || j >= 0 || carry != 0) { int x = i >= 0 ? num1.charAt(i) - '0' : 0; int y = j >= 0 ? num2.charAt(j) - '0' : 0; int res = x + y + carry; ans.append(res % 10); carry = res / 10; i--; j--; } // 计算完以后的答案需要翻转过来 ans.reverse(); return ans.toString(); }}
标签: #java数字相加的算法 #java数字相加的算法有哪些 #字符串的加法怎么实现