算法-大整数相乘
来源:互联网 发布:蜜桃影院源码免费 编辑:程序博客网 时间:2024/06/05 20:56
今天在k6k4在线编程做了一道算法题,记录一下:原文:大整数相乘
两个大整数相乘容易溢出,现将整数用字符数组表示,模拟整数相乘的过程。如两个整数字符数组表示为: a = new char[]{'1', '9', '9'}, b = new char[]{'2', '9', '9', '9', '9'}, 结果为:c = new char[]{'5', '9', '6', '9', '8','0','1'}。 注:大整数首位不能为0
输入、输出描述
输入:
两个大整数的字符串表示形式,排列从高位到地位,如321 的数组表示形式:new char[]{'3', '2', '1'}
输出:
两个大整数相乘结果的字符数组表示形式,首位不能为0
Example
输入:
a = new char[]{'1', '9', '9'}
b = new char[]{'2', '9', '9', '9', '9'}
输出:
c = new char[]{'5', '9', '6', '9', '8','0','1'}
解法:
原文:大整数相乘
两个大整数相乘容易溢出,现将整数用字符数组表示,模拟整数相乘的过程。如两个整数字符数组表示为: a = new char[]{'1', '9', '9'}, b = new char[]{'2', '9', '9', '9', '9'}, 结果为:c = new char[]{'5', '9', '6', '9', '8','0','1'}。 注:大整数首位不能为0
输入、输出描述
输入:
两个大整数的字符串表示形式,排列从高位到地位,如321 的数组表示形式:new char[]{'3', '2', '1'}
输出:
两个大整数相乘结果的字符数组表示形式,首位不能为0
Example
输入:
a = new char[]{'1', '9', '9'}
b = new char[]{'2', '9', '9', '9', '9'}
输出:
c = new char[]{'5', '9', '6', '9', '8','0','1'}
解法:
import java.util.*; public class Main { public char[] solution(char[] a,char[] b) { char[] c = new char[a.length + b.length]; int i, j, m, n; int sum, carry; m = a.length - 1; n = b.length - 1; for (i = m; i >= 0; i--) a[i] -= '0'; for (i = n; i >= 0; i--) b[i] -= '0'; carry = 0; for (i = m + n; i >= 0; i--) { sum = carry; if ((j = (i - m)) < 0) j = 0; for (; j <= i && j <= n; j++) sum += a[i - j] * b[j]; c[i + 1] = (char) (sum % 10 + '0'); carry = sum / 10; } if ((c[0] = (char) (carry + '0')) == '0') { char[] result = new char[c.length - 1]; for (i = 1; i < c.length; i++) { result[i - 1] = c[i]; } return result; } else { return c; } } }
原文:大整数相乘
阅读全文
0 0
- 大整数相乘算法
- 大整数相乘算法!
- 大整数相乘算法
- 大整数相乘算法
- 大整数相乘算法
- 大整数相乘算法
- 算法-大整数相乘
- 一个大整数相乘算法的例子
- 大整数相乘算法-Java实现
- 分治算法之大整数相乘问题
- 大整数相乘问题
- 大整数相乘
- 大整数相乘
- 大整数相乘
- 大整数相乘
- 大整数相乘
- 大整数相乘
- 大整数相乘
- 如何解决H5新标签兼容问题
- 指令
- Spring中系统运行之后没有mapper.xml文件
- /etc/fstab参数解释
- Linux 进程
- 算法-大整数相乘
- HBase Rowkey设计推荐文章列表
- 移动端webApp 控件聚焦后去掉默认边框
- 使用百度webuploader实现大文件上传
- Ubuntu下OpenCV和QT的安装(图文并茂)
- 学习django
- HDU2586 How far away?(树链剖分求LCA)
- Docker下的Kafka学习之二:搭建集群环境
- 自学视频教程网站