不用加减乘除做加法
来源:互联网 发布:mac book能下载爱剪辑 编辑:程序博客网 时间:2024/05/29 18:02
题目描述
写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。
算法:
5的二进制位 : 101
7的二进制位:10001
1、将数异或(半加) 10101
2、将数按位与 1
3、只有在某个位上按位与后结果是1,才说明数之间是1和1相加,应该进位,那么将与的结果左移1位得出进位后的结果。
4、将异或结果和与结果相加。
class Solution {public: int Add(int num1, int num2) { //1、异或,半加 int numxor = num1 ^ num2; //2、按位与 int numand = num1 & num2; numand = numand<<1; //3、得到结果 int res = numand + numxor; return res; }};
0 0
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- 不用加减乘除做加法
- Spring MVC 参数字段校验
- mybatis一对多 多对一
- openwrt LAN 和 WAN 对调了的处理
- Scala程序hello world
- IOS Dev Intro - NSDictionary
- 不用加减乘除做加法
- Qt5简单例子和中文乱码问题
- 源码分析查看
- 装完Centos7提示Initial setup of CentOS Linux 7 (core)
- XPath路径表达式
- spark 读取hbase数据并转化为dataFrame
- sql语句的异常
- Android二维码功能实现,在程序内嵌入ZXing项目
- 一图熟悉Git的基本操作