原题是力扣 面试题 08.05. 递归乘法
把较小值作为乘数,并且拆分乘数使其变成按位乘的形式,对于每一位都只是 *1,所以不需要乘号
class Solution {
public int multiply(int A, int B) {
int ans = 0;
for(long a = Math.max(A,B), b = Math.min(A,B);b != 0;b >>= 1, a += a)
if((b & 1) == 1)
ans += a;
return ans;
}
}