不用加减乘除符号的情况下实现加法运算(js代码)
1.题目描述
写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。
2.解题思路
根据按位异或,可得到没有进位的加法结果,关键在于怎么把进位再与得到的结果相加,才可以得到最后的结果。其中进位的情况是两个都为1时,与按位与运算的逻辑结果一致,但进位是与前一位相加,因此需要左移一位。
3.具体的代码实现
function Add(num1, num2)
{// write code here//按位异或得到的无进位的加法//按位与并且左移一位为进位值,进位值不为0时,则一直循环执行加法。var sum=0;while(num2!=0){sum=num1^num2;var c=(num1&num2)<<1;//左移一位相当于乘以2,相当于都为1 的对位,进位进到高1位的位置。num2=c;num1=sum;//本次得到的进位与不进位结果作为下一次的num2与num1进行下一次计算。}if(num2==0){sum=num1;}//num2=0时代表进位为0.return sum;
}
运行时间:15ms
占用内存:8796k
有更好的算法,欢迎交流!
不用加减乘除符号的情况下实现加法运算(js代码)相关推荐
- 不用调用函数的情况下 作次方运算
#include <stdio.h> int main() {int i = 2,N=3,n=1;for(;n<=N;n++)i = i * i;printf("%d&qu ...
- 在只容许使用++运算符的情况下,请完成下面代码,实现减法,乘法和除法。
在只容许使用++运算符的情况下,请完成下面代码,实现减法,乘法和除法. 注意:假设操作数全为正整数,并且可以不考虑性能,不能使用--,*,/等操作符. #include<stdio.h> ...
- java 无符号运算_不用加减乘除符号实现四则运算(整数)--JAVA
这种面试题...能想到的就是用位运算代替 在讲解之前,首先普及一点知识 与运算(全一才是一): 0 & 0 = 0 1 & 0 = 0 0 & 1 = 0 1 & 1 ...
- 在不用U盘的情况下,怎么快速给100台电脑装系统?
方法一:使用ghost克隆,先封装个ghost镜像,然后用ghost服务端网刻,客户端通过pex引导进入ghost客户端自动安装程序.当然这是盗版系统,不推荐大公司或者对保密性强的企业使用: 方法二: ...
- 解决系统在大数据情况下如何导出文件(附代码)
背景 系统的数据导出是一个重要的功能,而且对于excel类型的数据导出需求尤其多,如果系统的数据量不是很大,则无关紧要.但是系统的数据量如果非常巨大,对于导出数据来说就异常困难. 方法一 数据很少的情 ...
- 前端大数据情况下热力图工具heatmap.js的妙用
不说废话!直接上场景,例如: 当我们下载APP时,一般会浏览APP的介绍页面,而且肯定会有点击操作,根据某部分或者某个点在这个页面点击的次数,生成对应的点击范围热力图,从而达到反映用户操作行为的功能: ...
- 实现链栈的各种基本运算的算法_LeetCode基础算法题第78篇:如何不用加减号实现两数的加法运算?...
一直很纠结算法的文章应该怎么写.最后觉得还是从最简单的level开始写吧,一开始就弄些重量级的,什么人工智能,机器学习的算法,还要有大量的数学以及优化的知识,小白们估计会很郁闷,当然我也不一定能做出来 ...
- chrome浏览器下用几行js代码实现写入剪贴板功能
我们的原理是,创建一个 input 元素,将要写入的内容放入 input 里,然后选择 input,再调用浏览器的复制命令,将 input 里的内容复制,最后隐藏 input. 想通了非常容易理解! ...
- java 加法不用_【Java】 剑指offer(65) 不用加减乘除做加法
本文参考自<剑指offer>一书,代码采用Java语言. 题目 写一个函数,求两个整数之和,要求在函数体内不得使用+.-.×.÷四则运算符号. 思路 对数字做运算,除了四则运算外,只剩下位 ...
最新文章
- ECSHOP头部调用会员的消费积分
- 虚拟化厂商VMware、微软和思杰的vGPU支持概述
- java λ表达式_Java λ表达式
- 设计模式学习笔记(二十二:备忘录模式)
- 爬虫:滑动验证解决方法及python实现
- Luogu 3698 [CQOI2017]小Q的棋盘
- phpstrom 编辑器设置
- 【Java学习笔记一】类和对象
- Mybatis源码阅读(二):动态节点解析2.2 —— SqlSourceBuilder与三种SqlSource
- ICMP报文分析(转)
- 来了!苹果二代AirPods 3月发布 全黑配色加入
- 电子计算机与电子计算器,电子计算机与计算器的区别
- FY-4A建立中国区域图像行列号转经纬度的经纬度查找表进行几何校正
- 左程云算法Day6 图
- 六自由度机械手正逆运动学
- PLC可编程控制器实验箱QY-JXSY31
- linux中如何升级驱动程序,Redhat 如何升级显卡驱动?
- linux嗅探密码,tcpdump密码嗅探_tag
- Django 之 Models(Models 模型 数据表关系)
- 金蝶系统服务器上怎样备份文件,金蝶服务器数据库备份