码迷,mamicode.com
首页 > 其他好文 > 详细

【剑指offer48 不用加减乘除做加法】

时间:2020-06-15 20:33:43      阅读:42      评论:0      收藏:0      [点我收藏+]

标签:div   运算   solution   tle   剑指offer   个数   nbsp   int   title   

题目描述

写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。
 
两个数相加=进位+原始位
 
即a+b = a^b + (a&b)<<1
 
class Solution {
    
    /*
    a+b = 进位值 + 不进位的和
    */
public:
    int Add(int num1, int num2)
    {
        int n1 ; int n2 ;
        while(num2!=0){
            n1 = num1 ; n2 = num2 ;
            num1 = n1^n2;  num2 = (n1&n2)<<1 ;
        }
        return num1 ;

    }
};

 

【剑指offer48 不用加减乘除做加法】

标签:div   运算   solution   tle   剑指offer   个数   nbsp   int   title   

原文地址:https://www.cnblogs.com/Stephen-Jixing/p/13137583.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!