#yyds干货盘点# LeetCode程序员面试金典: 递归乘法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#yyds干货盘点# LeetCode程序员面试金典: 递归乘法相关的知识,希望对你有一定的参考价值。

题目:

递归乘法。 写一个递归函数,不使用 * 运算符, 实现两个正整数的相乘。可以使用加号、减号、位移,但要吝啬一些。

示例1:

输入:A = 1, B = 10

输出:10

示例2:

输入:A = 3, B = 4

输出:12

代码实现:

    public int multiply(int A, int B) 
int min = Math.min(A, B);
int max = Math.max(A, B);
int ans = 0;

for (int i = 0; min != 0; i++)
if ((min & 1) == 1)
ans += max << i;

min >>= 1;


return ans;


以上是关于#yyds干货盘点# LeetCode程序员面试金典: 递归乘法的主要内容,如果未能解决你的问题,请参考以下文章

#yyds干货盘点# LeetCode程序员面试金典:连续数列

#yyds干货盘点# LeetCode程序员面试金典:翻转数位

#yyds干货盘点# LeetCode程序员面试金典:回文排列

#yyds干货盘点# LeetCode程序员面试金典:整数转换

#yyds干货盘点# LeetCode程序员面试金典:配对交换

#yyds干货盘点# LeetCode程序员面试金典:最小差