文章目录
1.大数乘法
class Solution {
public:
string multiply(string num1, string num2) {
string ans="";
int m=num1.size(),n=num2.size();
vector<int> res(m+n,0);//两数相乘位数最多不会超过它们的位数之和
for(int i=n-1;i>=0;i--){
for(int j=m-1;j>=0;j--){
int num=(num1[j]-'0')*(num2[i]-'0')+res[i+j+1];//
res[i+j+1]=num%10;//当前位
res[i+j]+=num/10;//进位
}
}
int i=0;
while(res[i]==0&&i<m+n-1)
i++;
while(i<m+n)
ans+=res[i++]+'0';
return ans;
}
};