[LeetCode] Add Strings 字符串相加
2016-10-09 23:59
393 查看
Given two non-negative numbers
Note:
The length of both
Both
Both
You must not use any built-in BigInteger library or convert the inputs to integer directly.
这道题让我们求两个字符串的相加,之前LeetCode出过几道类似的题目,比如二进制数相加,还有链表相加,或是字符串加1,基本思路很类似,都是一位一位相加,然后算和算进位,最后根据进位情况看需不需要补一个高位,难度不大,参见代码如下:
类似题目:
Add Digits
Add Binary
Add Two Numbers
LeetCode All in One 题目讲解汇总(持续更新中...)
num1and
num2represented as string, return the sum of
num1and
num2.
Note:
The length of both
num1and
num2is < 5100.
Both
num1and
num2contains only digits
0-9.
Both
num1and
num2does not contain any leading zero.
You must not use any built-in BigInteger library or convert the inputs to integer directly.
这道题让我们求两个字符串的相加,之前LeetCode出过几道类似的题目,比如二进制数相加,还有链表相加,或是字符串加1,基本思路很类似,都是一位一位相加,然后算和算进位,最后根据进位情况看需不需要补一个高位,难度不大,参见代码如下:
class Solution { public: string addStrings(string num1, string num2) { string res = ""; int m = num1.size(), n = num2.size(), i = m - 1, j = n - 1, carry = 0; while (i >= 0 || j >= 0) { int a = i >= 0 ? num1[i--] - '0' : 0; int b = j >= 0 ? num2[j--] - '0' : 0; int sum = a + b + carry; res.insert(res.begin(), sum % 10 + '0'); carry = sum / 10; } return carry ? "1" + res : res; } };
类似题目:
Add Digits
Add Binary
Add Two Numbers
LeetCode All in One 题目讲解汇总(持续更新中...)
相关文章推荐
- LeetCode425——Add Strings(两个字符串中的数字相加(十进制或二进制),输出字符串形式的结果)
- LeetCode之二进制字符串相加
- leetcode_415(两个数字字符串相加,模拟大数相加)
- [LeetCode]—Add Binary 两个字符串二进制相加
- [LeetCode] 415. Add Strings 字符串相加
- leetcode415---字符串大数相加
- javascript与leetcode——字符串相加
- LeetCode 02. 两数相加(链表) 03.最大不重复的字符串
- 67.LeetCode Add Binary(easy)[字符串 大数相加处理]
- 每天一道LeetCode-----将用数组表示的整数加一,两个用字符串表示的(二进制)数相加
- 字符串与整数相加 整数占字符串的最后几位
- 大数问题:用字符串解决大数相加和相乘
- 小心SQL中的字符串相加变成NULL
- 字符串相加,复制
- Oracle不同行的某列字符串相加,去除重复值
- 谈c++ 和 c#关于字符串和其它类型的相加操作
- 长字符串数字相加
- 三个字符串相加的例子
- SQL 同一列列字符串相加。
- Oracle不同行的某列字符串相加,去除重复值