大数除的“伪O(1)”算法(类似小学算术)

                                                                                                  大数除伪O(1)算法

    前段时间在做计算器的大型实验,有一个版本要求大数运算,加减乘倒还好,除,觉得很难写。所以就在网上搜索了,不少博客,但是好像都是一个大数除以一个整数的方法,并没有大数除以大数的方法。总不能,用被减数一直减减数在那循环计数吧。遇到100000000000000000000/1这种极端情况,那还不得减到,猴年马月去!!

   后来,自己绞尽脑汁,想出来一种方法,觉得还不错,所以跟大家分享一下。

   直接描述有些抽象,那我就直接举个例子吧!

   比如,74811232478273232312332除以78233。

   其实,本质还是模仿减法。像(1)74811232478273232312332这个数,除以(2)78233很难算,但是我们可以除得大一点除以99999,,也就到了100000,结果非常明显,就是除去后5位的字符串,即(3)748112324782732323(删去12332)。这时,拿这个近似的解,即(3)重新反乘除数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值