原创:大数阶乘的讨论(4) (源码未实现)
2007-07-23 20:49
337 查看
(3)中我说过,要根据不同的大小适当调整两个常数,否则会导致计算错误,显然这是相当麻烦,同时由于大量调用multiply函数,又浪费了不少时间。
综上,我打算做以下改进:
1.为了提高multiply的速度,可以把3里的multiply函数改成inline内联的,理由是(3)中的乘法函数比较简短,而且代码调用也只有1处,不会导致程序体积变得很大。不过注意,请把c后缀改成cpp!
2.突然想到可以利用2^32进制来储存,但输出的只能是阶乘结果的16进制,那样就可以充分利用uint
然而具体实现有困难,因为当两个数乘积>2^32后,就会导致系统计算错误(高位丢了),所以暂时还没想到如何高效的解决这个问题,大家有提议的请言,小弟先行谢过!
综上,我打算做以下改进:
1.为了提高multiply的速度,可以把3里的multiply函数改成inline内联的,理由是(3)中的乘法函数比较简短,而且代码调用也只有1处,不会导致程序体积变得很大。不过注意,请把c后缀改成cpp!
2.突然想到可以利用2^32进制来储存,但输出的只能是阶乘结果的16进制,那样就可以充分利用uint
然而具体实现有困难,因为当两个数乘积>2^32后,就会导致系统计算错误(高位丢了),所以暂时还没想到如何高效的解决这个问题,大家有提议的请言,小弟先行谢过!
相关文章推荐
- 原创:大数阶乘的讨论(2)
- 原创:大数阶乘的讨论(1)
- 原创:大数阶乘的讨论(3)
- [原创]阶乘(1000的阶乘,10000的阶乘...)以及大数相乘(几十万位乘几十万位)
- (原创)通用查询实现方案(可用于DDD)[附源码] -- 设计思路
- 大数的阶乘(C语言实现)
- 大数阶乘的实现
- 大整数相乘和大数阶乘实现
- [原创]Android Camera 开发之实现一 附源码
- ObjC 实现的大数相加,大数相乘和n的阶乘
- [原创+源码]超简单:基于jQuery实现的选项卡(滑动门)效果
- (原创)通用查询实现方案(可用于DDD)[附源码] -- 简介
- 【原创源码】(04):周报表与月报表的存储过程统一实现。
- C语言实现大数阶乘
- 大数阶乘算法思想,具体实现网上很多,也顺便找了个算法思想
- C语言实现求大数阶乘
- c++大数阶乘的实现方法
- 【原创】基于Java NIO的多人在线聊天工具源码实现(登录,单聊,群聊)
- PHP实现生成vcf vcard文件功能类定义与使用方法详解【附demo源码下载】[原创]_php技巧_脚本之家
- 杭电acm1042题目:大数阶乘算法实现及优化