Leetcode:371.Sum Of Two Integer
生活随笔
收集整理的這篇文章主要介紹了
Leetcode:371.Sum Of Two Integer
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目:
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.
要求計算兩個整數a和b的和,但是不允許使用加法和減法運算符。
求解思路:
由于不能使用加法和減法,所以使用位運算按位進行處理。&運算符用來計算進位,^運算符用來計算和數。
計算進位和和數之后,再將和數和進位賦給a和b進行循環,直到進位為0為止。計算過程與二進制加法器一致。? 1 public class Solution { 2 public int getSum(int a, int b) { 3 while(b!=0){ 4 int carry = a & b; //計算進位 5 a = a ^ b; //計算和數 6 b = carry<<1; 7 } 8 return a; 9 } 10 }
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.
要求計算兩個整數a和b的和,但是不允許使用加法和減法運算符。
求解思路:
由于不能使用加法和減法,所以使用位運算按位進行處理。&運算符用來計算進位,^運算符用來計算和數。
計算進位和和數之后,再將和數和進位賦給a和b進行循環,直到進位為0為止。計算過程與二進制加法器一致。? 1 public class Solution { 2 public int getSum(int a, int b) { 3 while(b!=0){ 4 int carry = a & b; //計算進位 5 a = a ^ b; //計算和數 6 b = carry<<1; 7 } 8 return a; 9 } 10 }
?
?
轉載于:https://www.cnblogs.com/tmx22484/p/6349327.html
總結
以上是生活随笔為你收集整理的Leetcode:371.Sum Of Two Integer的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Redux概念之一: Redux简介
- 下一篇: Eigen教程(8)