小编Tej*_*s P的帖子

两个n位数字的递归除法算法

在下面的除法算法中,我无法理解为什么将 q 和 r 乘以 2 有效,以及为什么如果 x 是奇数则 r 会递增。

\n\n

请给出该递归除法算法的理论论证。

\n\n

提前致谢。

\n\n
function divide(x, y) \n   if x = 0: \n      return (q, r) = (0, 0) \n   (q, r) = divide(floor(x/2), y) \n   q = 2q, r = 2r \n   if x is odd: \n      r = r + 1 \n   if r \xe2\x89\xa5 y: \n      r = r \xe2\x88\x92 y, q = q + 1\n   return (q, r)\n
Run Code Online (Sandbox Code Playgroud)\n

algorithm recursion

4
推荐指数
1
解决办法
2836
查看次数

标签 统计

algorithm ×1

recursion ×1