自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 大数运算(8)——大数幂运算

幂的实现是最为简单的了,因为有了前面的算法做铺垫,就是调用乘法函数,来循环去自乘,幂指数相应减1,直到幂指数变为0时结束。下面是C语言代码实现:

2016-09-03 21:31:39 9915 8

原创 大数运算(7)——大数阶乘(求阶乘)

对于大数来说,一个数的阶乘是非常大的,同样,一个int类型的整数,他的阶乘就有可能会很大。就拿50来说,他的阶乘位数是65位,就已经远远超过了long long int类型的最大值。这时候,我们要通过字符串的方法,来进行阶乘的运算。当然,需要注意的是:我们所求一个数的阶乘,这个数是在int范围内的,5000的阶乘位数是16326位。其方法是:首先,我们是可以先求一定范围内的最大

2016-09-01 21:22:12 39584 18

原创 大数运算(6)——大数阶乘(求位数)

对于比较大的数,求这个数的阶乘的位数的方法:第一种:lg(N!)=[lg(N*(N-1)*(N-2)*......*3*2*1)]+1         =[lgN+lg(N-1)+lg(N-2)+......+lg3+lg2+lg1]+1用C语言实现:#include#includeint main(){ int n; double sum=0; scanf("%d

2016-09-01 21:19:56 2628

原创 大数运算(5)——大数除法(取模、取余)

有关于大数除法的运算可以大致分为两种:一种是求商,另一种是取余。有两个大整数a和b,当a==b时,a/b==1,余数是0。(a!=0,b!=0)                                     当a>b时,a/b>=1,余数需要通过计算求得。                                     当a而我们经常需要求的便是当a>b,这种情况

2016-08-30 16:15:39 26795 4

原创 大数运算(4)——大数乘法

首先说一下乘法计算的算法,从低位向高位乘,在竖式计算中,我们是将乘数第一位与被乘数的每一位相乘,记录结果,之后,用第二位相乘,记录结果并且左移一位,以此类推,直到计算完最后一位,再将各项结果相加。得出最后结果。计算的过程基本上和小学生列竖式做乘法相同。为编程方便,并不急于处理进位,而将进位问题留待最后统一处理。ans[i+j] = a[i]*b[j];

2016-08-25 19:01:03 22241 20

原创 大数运算(3)——大数减法

大数的减法与大数加法的方法有相似之处的,都是模拟人工运算的,从最低位开始运算,一直到最高位。其方法是:首先,要判断减数和被减数哪一个位数长,减数位数长是正常减;被减数位数长,则被减数减减数,最后还要加上负号;两数位数长度相等时,最好比较一下哪一个数字大,否则负号处理会很繁琐,用大的减去小的,最后加上负号;其次,处理每一项时要,如果前一位相减有借位,就先减去上一位的借位,无则不减;再去判

2016-08-25 17:12:07 3635 2

原创 大数运算(2)——大数加法

/*大数加法的中心思想就是:模拟人工列竖式算加法的方法。先从最低位开始相加,判断是否进1,一直到最高位。例如:求12545642233+278545的和,该怎么算?是这样的:     3  3  2  2  4  6  5  4  5  2  1  0+  2  7  8  5   4  5  0  0  0  0  0  0————————————————    5

2016-08-25 16:57:33 1912 2

原创 大数运算(1)——大数储存

int (16位) -32768~32767(注:现在大多数的编译器的int型是32位的 也就是说跟long型的大小一样)long long或__int64(64位) -9223372036854775808~9223372036854775807float(32位) 精确到小数点后6~7位double (64位) 精确到小数点后15~16位(注:平时做题时 都把浮

2016-08-25 11:57:21 3263

原创 回溯——八皇后问题

八皇后问题:国际西洋棋棋手马克斯·贝瑟尔于1848年提出:在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。分析:八皇后问题是回溯算法的典型案例。我想我们在自己做的过程中,是这样的:是先从(0,0)这个坐标开始排放皇后,然后(1,2)这个坐标摆放皇后,然后(2,4)这个坐标摆放皇后,然后(3,1)这个坐

2016-08-23 08:03:50 896

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除