数组可以实现的算法很多,典型应用就是大整数相乘问题。利用的思想非常巧妙,感觉和链表实现多项式运算有异曲同工,大整数相乘主要避免计算机存储精度不够的时候。按照基本的乘法运算实现即可! 主要注意返回指针类型,和关键点k=i的技巧。 ...
分类:
其他好文 时间:
2016-12-04 19:31:45
阅读次数:
142
计算两个大整数相乘的结果,数字不是double类型能表示的,数字长度没有限制(最大127位)。 方法一:使用java中的大整数处理库函数,java.math.BigInteger,java.math.BigDecimal; 方法二:不利用库函数,自己实现其功能,可以练习自己对待复杂问题的处理能力,提 ...
分类:
其他好文 时间:
2016-10-25 23:51:55
阅读次数:
322
输入一个长整型数s和一个整数c, 求s×c的精确值。 ...
分类:
其他好文 时间:
2016-07-12 13:39:28
阅读次数:
134
Description 求两个不超过200位的非负整数的积。 解决方法:先考虑大整数存储结构,数组和链表都可以,因为数组使用不熟练,我先考虑链表,做了6小时才写好...也是醉了。下面简单介绍我的思路: 1、考虑链表的数据结构:先思考得知,链表结点要有pre、next指针,所以是双向链表,要设置头尾节 ...
分类:
其他好文 时间:
2016-06-07 16:21:28
阅读次数:
230
假设我们要判断n是否为素数: 费马小定理告诉我们,若n满足:a^(n-1) % n==1 则n有很大概率为素数(反例是伪素数)若是n不满足这个式子则n一定为合数。那么我们随机几次a的值,再加以验证,这样就可以得到极为正确(但不一定正确)的结果。 快速乘:即运用快速幂的思想来进行乘法,以防大整数相乘取 ...
分类:
其他好文 时间:
2016-05-31 22:18:15
阅读次数:
101
本文主要整理了几个常用的大整数的算法:大整数加法大整数乘法大整数阶乘大整数幂其实大体的思路都差不多,都是用数组来存储大整数。以下的代码仅仅实现功能,并没有充分详细的参数判断,在实际运用中,肯定是需要考虑的。 大整数相加 大整数相乘 大整数阶乘 大整数幂 ...
分类:
编程语言 时间:
2016-04-09 18:44:45
阅读次数:
284
1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 int main(){ 7 char a[101],b[101]; 8 int ans[220],len_ans; 9 cin>>a>>...
分类:
其他好文 时间:
2015-09-26 09:13:01
阅读次数:
220
以前做ACM的时候,许多人都通过 BigInteger 来实现大数乘法,让我记忆犹新的事2012年的辽宁省赛在大连大学,第一道水题就是大整数乘法,那时还不会java。 大数乘法的实现是基于印度的格子乘法,使用这种方法,计算 m 位数乘以 n 位数只需要创建一个 m+n 位的数组保存结果即可。
今天我们来用python来模拟一下格子算法的运算过程,python来写算法还是很简单的。
下面是从维基...
分类:
编程语言 时间:
2015-05-12 09:32:38
阅读次数:
553
【题目】
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.
【解析】
题意:两个字符串表示的非负整数相乘,用字符串的...
分类:
其他好文 时间:
2014-12-23 12:32:31
阅读次数:
174
题目意思:
给定若干字母和它们相应的个数,计算可以组成多少个不同的字符
http://acm.hdu.edu.cn/showproblem.php?pid=1261
题目分析:
组合公式的直接应用,s!/(ai!) s:字符总数 ai:第i个字符的个数,用数组实现高精度的组合公式
不要直接求是S!的阶乘,那样会超时,需要上下同时求,约去最大...
分类:
其他好文 时间:
2014-10-27 10:54:53
阅读次数:
273