问题描述
我想分得很大。
输入是1~1024位整数。
首先,我认为使用sub是解决方案。
所以我做了两个阵列。分红除此。
但这种情况发生了。
执行10000000000/1这种计算需要花费很多时间。
导致需要10000000000次计算。
大量,我怎样才能有效地划分计算?
i wanna large divide.
input is 1~1024 bit integer.
first, i think using sub is solution.
so i made two array. and sub divisor to dividend.
but this situation happen.
execute 10000000000 / 1 this calulation take so many time.
cause 10000000000 number of calculation are needed.
in large number, how can i divide calculation efficiently ??
推荐答案
TAOCP,第2卷,第4.6.1节,算法D(第421页)
问候,
Johannes
-
" Wer etwas kritisiert muss es noch lange nicht selber besser k?nnen。 Es
reicht zu wissen,da? andere es besser k?nnen und andere es auch
besser machen um einen Vergleich zu bringen。 - Wolfgang Gerber
in de.sci.electronics< 47 *********************** @ news.freenet.de>
TAOCP, Volume 2, Chapter 4.6.1, Algorithm D (page 421)
Regards,
Johannes
--
"Wer etwas kritisiert muss es noch lange nicht selber besser k?nnen. Es
reicht zu wissen, da? andere es besser k?nnen und andere es auch
besser machen um einen Vergleich zu bringen." - Wolfgang Gerber
in de.sci.electronics <47***********************@news.freenet.de>
TAOCP,第2卷,第4.6.1节,算法D(第421页)
TAOCP, Volume 2, Chapter 4.6.1, Algorithm D (page 421)
哎呀,错误。我的意思是:
TAOCP,第2卷,第4.3.1节,算法D(第272页)
问候,
Johannes
-
" Wer etwas kritisiert muss es noch lange nicht selber besser k?nnen。 Es
reicht zu wissen,da? andere es besser k?nnen und andere es auch
besser machen um einen Vergleich zu bringen。 - Wolfgang Gerber
in de.sci.electronics< 47 *********************** @ news.freenet.de>
Oops, wrong. I meant:
TAOCP, Volume 2, Chapter 4.3.1, Algorithm D (page 272)
Regards,
Johannes
--
"Wer etwas kritisiert muss es noch lange nicht selber besser k?nnen. Es
reicht zu wissen, da? andere es besser k?nnen und andere es auch
besser machen um einen Vergleich zu bringen." - Wolfgang Gerber
in de.sci.electronics <47***********************@news.freenet.de>
您可以尝试使用像GMP这样的bignum库。他们使用了几种
算法来最大化速度,并为角落情况提供特殊代码
就像这样。
注意:你的问题有与C无关,这就是这个小组
的地址。因此,您可能希望将来尝试使用comp.programming进行算法和一般编程实践的问题。
You might try using a bignum library like GMP. They employ several
algorithms to maximise speed and have special code for corner cases
like this.
Note: Your question has nothing to do with C, which is what this group
addresses. So you might want to try comp.programming in future for
questions on algorithms and general programming practises.
这篇关于我怎么能分得很大?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!