寫一個函式,求兩個整數之和,要求在函式體內不得使用 +、-、*、/ 四則運算子號
解題思路
使用位運算來解題,具體步驟如下:
- 兩個數異或:相當于每一位相加,而不考慮進位
- 兩個數相與,并左移一位:相當于求得進位
- 將上述兩個步驟的結果相加
重復執行上述步驟,直到進位為 0,由于沒有進位了,所以此時相加的結果就是最終結果
public class Solution {
public int Add(int num1,int num2) {
while(num2 != 0) {
int temp = num1^num2;
num2 = (num1&num2) << 1;
num1 = temp;
}
return num1;
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/208637.html
標籤:其他
