leetcode 371 两数加法

用位运算来实现该问题,用异或可以实现无符号的加法操作,然后需要使用与运算来实现进位,而负数因为是补码的形式存储所以能够得到正确的处理,十分巧妙的方法,贴代码。

 1 class Solution {
 2 public:
 3     int getSum(int a, int b) 
 4     {
 5         while(b!=0)
 6         {
 7             unsigned int carry = (unsigned int)(a&b)<<1;
 8             a^=b;
 9             b = carry;
10         }
11         return a;
12     }
13 };

 

leetcode 371 两数加法

上一篇:Linux|CentOS下配置Maven环境


下一篇:第二次实验