415. add strings

Given two non-negative integers num1 and num2 represented as string, return the sum of num1 and num2.

Note:

  1. The length of both num1 and num2 is < 5100.
  2. Both num1 and num2 contains only digits 0-9.
  3. Both num1 and num2 does not contain any leading zero.
  4. You must not use any built-in BigInteger library or convert the inputs to integer directly.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class  {
public String addStrings(String num1, String num2) {
int i = num1.length() - 1;
int j = num2.length() - 1;
String s = "";
int c = 0;
while (i >= 0 || j >= 0 || c > 0) {
c += i >= 0?num1.charAt(i--) - '0' : 0;
c += j >= 0?num2.charAt(j--) - '0' : 0;
s = c % 10 + s;
c /= 10;
}
return s;
}
}