提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
题目描述
写一个函数,求两个整数之和,要求在函数体内不得使用 “+”、“-”、“*”、“/” 四则运算符号。
示例:
输入: a = 1, b = 1
输出: 2
提示:
a, b 均可能是负数或 0
结果不会溢出 32 位整数
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/bu-yong-jia-jian-cheng-chu-zuo-jia-fa-lcof
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
解题过程
解题思路
规律:
不断进行这样的操作:不进位加法(异或)、进位加法(相&后左移一位)。
class Solution {
public int add(int a, int b) {
while(b != 0){
int bujinwei = a ^ b;
int jinwei = (a & b) << 1;
a = bujinwei;
b = jinwei;
}
return a;
}
}
总结
暂时没有总结,待续。。。