Multiply Strings LeetCode solution in Java

1
class Solution {
2
public String multiply(String num1, String num2) {
3
if (num1.equals("0") || num2.equals("0")) return "0";
4
int[] arr = new int[num1.length() + num2.length()];
5

6
int index = 0;
7
for (int i = num1.length() - 1; i >= 0; i--) {
8
int carry = 0;
9
int column = 0;
10
for (int j = num2.length() - 1; j >= 0; j--) {
11
int a = (num1.charAt(i) - '0') * (num2.charAt(j) - '0');
12
int temp = (arr[index + column] + carry + a);
13
arr[index + column] = temp % 10;
14
carry = temp / 10;
15
column++;
16
}
17
if (carry != 0) {
18
arr[index + column] = carry;
19
}
20
index++;
21
}
22
String ans = "";
23
index = arr.length - 1;
24
while (arr[index] == 0) {
25
index--;
26
}
27
for (int i = index; i >= 0; i--) {
28
ans += arr[i];
29
}
30
return ans;
31
}
32
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0