LeetCode 29 两数相除
https://leetcode-cn.com/problems/divide-two-integers/submissions/
解决方案
class Solution {public int divide(int dividend, int divisor) {// 考虑被除数为最小值的情况if (dividend == Integer.MIN_VALUE) {if (divisor == 1) {return Integer.MIN_VALUE;}if (divisor == -1) {return Integer.MAX_VALUE;}} // 考虑除数为最小值的情况if (divisor == Integer.MIN_VALUE) {return dividend == Integer.MIN_VALUE ? 1 : 0;} // 考虑被除数为 0 的情况if (dividend == 0) {return 0;}// 一般情况,使用类二分查找// 将所有的正数取相反数,这样就只需要考虑一种情况boolean rev = false;if (dividend > 0) {dividend = -dividend;rev = !rev;}if (divisor > 0) {divisor = -divisor;rev = !rev;}ans=0;solve(dividend,divisor,0);return rev ? -ans : ans;}int ans = 0;public int solve(int dividend,int divisor,int candidate){int temp = divisor<<candidate;if(temp<dividend){return dividend;}if(temp>=Integer.MIN_VALUE>>1){dividend = solve(dividend, divisor, candidate + 1);}if(temp>=dividend){ans += 1 << candidate;dividend -= temp;}return dividend;}
}
LeetCode 29 两数相除相关推荐
- leetcode 29.两数相除
leetcode 29.两数相除 题目描述 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 ...
- Java实现 LeetCode 29 两数相除
29. 两数相除 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 divisor 得到的商 ...
- leetcode 29 两数相除 C语言
题目 leetcode 29 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 diviso ...
- LeetCode 29. 两数相除(位运算)
1. 题目 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 divisor 得到的商. 示 ...
- leetcode —— 29. 两数相除
给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 divisor 得到的商. 整数除法的结果 ...
- [LeetCode]29 两数相除和一个小坑点
给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符.返回被除数 dividend 除以除数 divisor 得到的商.示例 1:输入: ...
- leetcode 29.两数相除(python3)68ms
题目描述: 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 divisor 得到的商. 整 ...
- LeetCode高频题29. 两数相除:不用加减乘除号,求加法,减法,乘法,除法
LeetCode高频题29. 两数相除 提示:本题是系列LeetCode的150道高频题,你未来遇到的互联网大厂的笔试和面试考题,基本都是从这上面改编而来的题目 互联网大厂们在公司养了一大批ACM竞赛 ...
- LeetCode-中等-29. 两数相除
LeetCode-中等-29. 两数相除 题目 引用自:LeetCode-中等-29. 两数相除(如有侵权联系删除) 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不 ...
最新文章
- 对付惰性必杀:(10+2)*5法
- python 路径双斜杠问题
- DeepMatching文献总结:图像拼接、图像匹配、图像检索
- php探针源码,服务器探针 (刘海探针)—开源PHP探针
- lombok中的@Data注解与MyBatis的懒加载机制冲突解决
- python3网络爬虫开发实战下载_【Python3网络爬虫开发实战】 1.1-Python3的安装
- win7连接sftp_SFTP远程连接服务器上传下载文件-vs2013项目实例
- 云图说 | GPU共享型AI容器,让AI开发更普及
- html width设置没用,html style的width不起作用
- 七牛云 转码_YYC松鼠短视频系统V2.0版本发布,亮点新增转码加水印功能
- android 应用选择器的使用
- python 阿里云短信接口_python 之阿里云短信服务接入流程短信接口
- java oracle 乱码_oracle中的数据库乱码的原因与解决
- 2021爱分析・区域性银行数字化厂商全景报告
- 【面试必看】零经验如何准备前端面试(面试项目技能描述)
- 用PS做手机计算机,功能与电脑ps相媲美的手机画画软件
- 创新设计思维记录(part1)
- day29 | 216.组合总和III 17.电话号码的字母组合
- 【ANSYS】ANSYS导入数组方法:MATLAB输出TXT文件导入ANSYS笔记
- ECCV2018 papers
热门文章
- JDK1.7配置及测试
- mysql数据库事件不执行_如何查看mysql事件是否执行
- 正序 逆序写 java_C語言版和JAVA版 把一個字節正序(高位在前)轉為逆序(低位在前) 和 逆序轉為正序...
- php数组修改键值,php数组中子数组如何修改键值
- dicom文件_DICOM数据转成NIfTI数据
- lwip接收文件 stm32_接收数据
- 容器部署不适合文件服务器,建议使用内置容器部署War文件与可执行jar
- 剑指 Offer 03——10
- 深度学习和目标检测系列教程 1-300:什么是对象检测和常见的8 种基础目标检测算法
- Kaggle入门五大步,跟着做就对了