371. Sum of Two Integers
Posted Machelsky
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了371. Sum of Two Integers相关的知识,希望对你有一定的参考价值。
Calculate the sum of two integers a and b, but you are not allowed to use the operator +
and -
.
Example:
Given a = 1 and b = 2, return 3.
思路:xor相加存无carray的sum,and左移一位为carry,两者相加即可。
11 + 11
11^11=00 , (11&11)<<1=110
00^110=110
之后总结一下bit的几种常见用法。
参考discussion,自己再实现一遍!
public class Solution { public int getSum(int a, int b) { if(b==0) { return a; } int sum=a^b; int carry=a&b; return getSum(sum,carry<<1); } }
以上是关于371. Sum of Two Integers的主要内容,如果未能解决你的问题,请参考以下文章