Multiply Strings
来源:互联网 发布:日本充气娃娃淘宝网 编辑:程序博客网 时间:2024/05/19 23:24
题目:
Given two numbers represented as strings, return multiplication of the numbers as a string.
Note: The numbers can be arbitrarily large and are non-negative.
分析:大整数的乘法;
参考代码如下:
http://www.programcreek.com/2014/05/leetcode-multiply-strings-java/
public class Solution { public String multiply(String num1, String num2) { String n1 = new StringBuilder(num1).reverse().toString(); String n2 = new StringBuilder(num2).reverse().toString(); int[] d = new int[num1.length()+num2.length()]; //multiply each digit and sum at the corresponding positions for(int i=0; i<n1.length(); i++){ for(int j=0; j<n2.length(); j++){ d[i+j] += (n1.charAt(i)-'0') * (n2.charAt(j)-'0'); } } StringBuilder sb = new StringBuilder(); //calculate each digit for(int i=0; i<d.length; i++){ int mod = d[i]%10; int carry = d[i]/10; if(i+1<d.length){ d[i+1] += carry; } sb.insert(0, mod); } //remove front 0's while(sb.charAt(0) == '0' && sb.length()> 1){ sb.deleteCharAt(0); } return sb.toString();}}
0 0
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- Multiply Strings
- 将博客搬至CSDN
- HDU 5451 Best Solver(矩阵快速幂+ 共轭复数 + 循环节 数论啊 )
- JAVA实现链表的反转(《剑指offer》)
- 学习ThinkPHP3.2.2:模板文件的加载
- 对 Web 应用程序进行性能调优
- Multiply Strings
- 学习ThinkPHP3.2.2:模板文件所需css文件位置
- Codeforces Round #322 (Div. 2)C. Developing Skills
- 统计文件行数
- ==和equal()的区别
- 反射3:利用java反射技术将查询结果封装成对象
- 再说说服务
- python中使用re.sub更换倒数第一个字符串
- hduacm 5480 Conturbatio前缀和