[剑指Offer]65-不用加减乘除做加法
2024-10-09 17:02:02
题目
写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。
题解
用位运算模拟加法的三步:
- 无进位加法:异或运算。
- 进位:与运算再左移一位。
- 直到进位为0结束。
代码
public class Main {
public static void main(String[] args) {
System.out.println(Add(5,17));
}
public static int Add(int num1,int num2) {
int sum=0;
int carry=0;
do {
sum=num1^num2;
carry=(num1&num2)<<1;
num1=sum;
num2=carry;
}while(carry!=0);
return sum;
}
}
最新文章
- Web自动化基础(一)使用Selenium定位元素
- pom.xml详解
- ACA烤箱菜单各项温度
- 【leetcode】N-Queens II
- [译]JavaScript中,{}+{}等于多少?
- Lubuntu下配置Python开发环境
- [Flex] IFrame系列 —— IFrame嵌入html点击其他组件后页面消失的问题
- Data Base sqlServer DataReader与DataSet的区别
- main函数是个什么东西
- 在含有null值的复杂类的集合(Collection)中取最大值
- Win7/Win8.1预订升级Win10失败临时解决方案
- kinect for windows - 手势识别之一,C++实现
- linux--关于shell的介绍
- Centos 7系统启动修复
- FLAnimatedImage -ios gif图片加载框架介绍
- Linux共享库、静态库、动态库详解
- GateOne Web SSH 环境搭建
- Xamarin Android ListView 控件使用
- springboot单元测试 注入失败 空指针
- 一步步教你轻松学朴素贝叶斯模型算法Sklearn深度篇3