舒适电脑

文章
7
资源
0
加入时间
2年10月18天

LeetCode 剑指 Offer 65. 不用加减乘除做加法***具体思想:具体代码:

具体思想:这里采用的思路注意两点:1.其实相当于算完进位左移后,再次当作加数和非进位数相加,直到进位为0为止;2.移位是注意一下,c++要求有符号负数不能随意左移,是未定义行为,因此要把该数转化为无符号数进行左移;值得注意的是,符号在进位计算内仅作修饰,也就是正数和负数可以直接按照相同进行计算,不用太管符号位;具体代码:class Solution {public: int add(int a, int b) { while(b!=0){ int