43. Multiply Strings

来源:互联网 发布:海尔电视软件下载 编辑:程序博客网 时间:2024/06/06 22:41
class Solution {public:    string multiply(string num1, string num2) {        int i,j;        string product(num1.size()+num2.size(),'0');//初始化乘积        for(i=num1.size()-1;i>=0;i--)        {            int carry=0;//进位为0            for(j=num2.size()-1;j>=0;j--)            {                int temp=product[i+j+1]-'0'+(num1[i]-'0')*(num2[j]-'0')+carry;                product[i+j+1]=temp%10+'0';                carry=temp/10;            }            product[i]+=carry;        }        size_t startpos=product.find_first_not_of('0');//找到乘积中第一个非0的位置        if(startpos!=string::npos)        {            return product.substr(startpos);        }        return "0";    }};
0 0