当前位置:网站首页>剑指 Offer II 001. 整数除法
剑指 Offer II 001. 整数除法
2022-08-03 05:25:00 【花开花落夏】
题目
给定两个整数 a 和 b ,求它们的除法的商 a/b ,要求不得使用乘号 ‘*’、除号 ‘/’ 以及求余符号 ‘%’ 。
注意:
整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2
假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231−1]。本题中,如果除法结果溢出,则返回 231 − 1
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/xoh6Oh
解题
class Solution {
public int divide(int a, int b) {
boolean isNegative = true;
int result = 0;
if(a==0){
return 0;
}
if(b==Integer.MIN_VALUE){
return a==Integer.MIN_VALUE?1:0;
}
if((a>0&&b>0)||(a<0&&b<0)){
isNegative = false;
}
if(a==Integer.MIN_VALUE){
if(b==-1){
return Integer.MAX_VALUE;
}else{
a+=Math.abs(b);
result++;
}
}
a=a>0?a:-a;
b=b>0?b:-b;
for(int i=31;i>=0;i--){
if((a>>i)>=b){
a-=b<<i;
result+=1<<i;
}
}
return isNegative?-result:result;
}
}
边栏推荐
- ZEMAX | 绘图分辨率结果对光线追迹的影响
- 动漫:海贼王女
- C# Base64加密
- 2021-03-22
- 稳压二极管的工作原理及稳压二极管使用电路图
- 自监督论文阅读笔记 Self-Supervised Visual Representation Learning with Semantic Grouping
- PCB设计经验之模拟电路和数字电路区别为何那么大
- 自监督论文阅读笔记Index Your Position: A Novel Self-Supervised Learning Method for Remote Sensing Images Sema
- 快速的将结构体各成员清零
- MCU接收串口字符型数据转换成数据型数据
猜你喜欢
【第三周】ResNet+ResNeXt
VCC(电源)和 GND(地)之间电容的作用
【第四周】MobileNet和HybridSN
ZEMAX | 如何围绕空间中的任何点旋转任何元素
cb板上常用的电子元器件都有哪些?
softmax和最大熵
ASP.NET MVC3的伪静态实现
Dynamic adjustment subject web system?Look at this one is enough
ZEMAX | 在设计抬头显示器(HUD)时需要使用哪些工具?
自监督论文阅读笔记 Self-Supervised Visual Representation Learning with Semantic Grouping
随机推荐
MATLAB给多组条形图添加误差棒
NIO知识汇总 收藏这一篇就够了!!!
进程间通讯 (IPC 技术) - 信号
电子元器件的分类有哪些?
ucosII OSMemCreate()函数的解析
window下VS2022封装动态库以及调用动态库
IPC通信 - 管道
[XSS, file upload, file inclusion]
【七夕特效】 -- 满屏爱心
常见的电子元器件分类介绍-唯样商城
各种cms getshell技巧
采用Trench肖特基二极管,实现功率密度的显著提升
借助ginput函数在figure窗口实时读取、展示多条曲线的坐标值
Hook初探索
什么是参数化设计,通过实操了解一下? | SOLIDWORKS 操作视频
opencv目标检测
深度学习理论课程第四、五章总结
A.1#【内存管理】——1.1.2 zone: struct zone
电子元器件之电子变压器可分为哪几类?
JSP的基本使用