【剑指Offer刷题小记】不用加减乘除做加法(JAVA版)

2020-04-09  本文已影响0人  park_one

题目描述:写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。

问题分析:根据做题经验,不用四则运算符那就是利用逻辑运算符来实现。首先按位与运算是看哪个位上二进制求和需要进位,进位后该位上位0,前一位上为1,也就是将&运算的结果左移一位;其次异或运算是看哪个位上分别为0,1,这样二进制求和直接相加无需进位。知道这两个位运算后便可重复进行与运算和异或运算,然后判断是否还有需要进位的部分,如果没有则推出循环。

代码截图

上一篇下一篇

猜你喜欢

热点阅读