※29. 两数相除(java)
给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。返回被除数 dividend 除以除数 divisor 得到的商。整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2示例 1:输入: dividend = 10, divisor = 3
输出: 3
解释: 10/3 = truncate(3.33333..) = truncate(3) = 3
示例 2:输入: dividend = 7, divisor = -3
输出: -2
解释: 7/-3 = truncate(-2.33333..) = -2提示:被除数和除数均为 32 位有符号整数。
除数不为 0。
假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231 − 1]。本题中,如果除法结果溢出,则返回 231 − 1。来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/divide-two-integers
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
class Solution {public int divide(int dividend, int divisor) {if(dividend == 0) return 0;if(dividend == Integer.MIN_VALUE && divisor == -1) return Integer.MAX_VALUE;boolean negative;negative = (dividend ^ divisor) <0;//用异或来计算是否符号相异long t = Math.abs((long) dividend);long d= Math.abs((long) divisor);int result = 0;for(int i = 31; i >= 0; i--){if ((t>>i)>=d) {//找出足够大的数2^n*divisorresult+=1<<i;//将结果加上2^nt-=d<<i;//将被除数减去2^n*divisor} }return negative ? -result : result;}
}
※29. 两数相除(java)相关推荐
- Java实现 LeetCode 29 两数相除
29. 两数相除 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 divisor 得到的商 ...
- leetcode 29.两数相除
leetcode 29.两数相除 题目描述 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 ...
- LeetCode高频题29. 两数相除:不用加减乘除号,求加法,减法,乘法,除法
LeetCode高频题29. 两数相除 提示:本题是系列LeetCode的150道高频题,你未来遇到的互联网大厂的笔试和面试考题,基本都是从这上面改编而来的题目 互联网大厂们在公司养了一大批ACM竞赛 ...
- LeetCode-中等-29. 两数相除
LeetCode-中等-29. 两数相除 题目 引用自:LeetCode-中等-29. 两数相除(如有侵权联系删除) 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不 ...
- LeetCode 27移除元素28实现strStr()29两数相除
维护幸苦,如有打卡欢迎关注公众号bigsai回复进群,如有帮助欢迎点赞支持! 移除元素 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长 ...
- 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两数相除java
这是力扣上的一道题,参考评论区. 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 divi ...
最新文章
- java 文件下载 【学习记录】
- 团队作业——Alpha冲刺 6/12
- 风险管理、收尾管理、知识产权管理
- nginx php默认首页,iis、apache、nginx设置默认首页index.html方法图解 电脑维修技术网...
- python 艺术照片滤镜_使用Python创建自己的Instagram滤镜|视觉实战
- 2020成考C语言答案,2020年_优学院_C语言程序设计_章节答案
- Linux特殊权限set_uid、set_gid、stick_bit命令和软链接文件、硬连接文件
- 802.11无线wifi协议学习(二)
- 北信源与天津麒麟签战略合作协议 共建国产信息安全生态圈
- 计算机网络——透明网桥算法
- 电脑远程桌面连接怎么操作?
- 微信点餐html5模板,【瑞蚁原创分享】12:springboot微信点餐之微信模板
- 游戏开发人员推荐书单
- 美杜莎网站是哪个服务器,美杜莎云服务器
- 怎么在局域网中查找一台电脑连接到的交换机端口?(实测可用,CISCO 交换机环境)
- HDU 1236 排名(Microsoft_zzt)
- 智能辅助标注——数据标注领域新突破
- 时域和频域的简单理解方法
- linux生成pdf乱码,com.aspose 生成pdf在linux生成PDF乱码解决(window环境正常)
- docx文档转pdf文件