static String bigNumMul(String num1,String num2) {
char num1Chars[] = num1.toCharArray();
char num2Chars[] = num2.toCharArray();
int num1Ary[] = new int[num1Chars.length];
for (int i = 0; i < num1Ary.length; i++) {
num1Ary[i] = num1Chars[i] - '0';
}
int num2Ary[] = new int[num2Chars.length];
for (int i = 0; i < num2Ary.length; i++) {
num2Ary[i] = num2Chars[i] - '0';
}
int resAry[] = new int[num1Chars.length + num2Chars.length - 1];
for (int i = 0; i < num1Ary.length; i++) {
for (int j = 0; j < num2Ary.length; j++) {
resAry[i + j] += num1Ary[i] * num2Ary[j];
}
}
for (int i = resAry.length - 1; i > 0; i--) {
resAry[i - 1] += resAry[i] / 10;
resAry[i] = resAry[i] % 10;
}
int shouwei = resAry[0] / 10;
resAry[0] = resAry[0] % 10;
String res = shouwei == 0 ? "" : "1";
for (int i = 0; i < resAry.length; i++) {
res += resAry[i];
}
return res;
}
大数乘法
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 大数乘法的算法 大数乘法的关键在于如何用字符串来模拟大数乘法。方法有如下几种:模拟普通的手算乘法、利用代数方法优化...