Divide Two Integers
来源:互联网 发布:类似陌陌快聊的软件 编辑:程序博客网 时间:2024/06/07 08:06
题意:
不用乘法除法取模运算,求两个整数相除的结果;
分析:
参考代码如下:
http://www.programcreek.com/2014/05/leetcode-divide-two-integers-java/
public int divide(int dividend, int divisor) { //handle special cases if(divisor==0) return Integer.MAX_VALUE; if(divisor==-1 && dividend == Integer.MIN_VALUE) return Integer.MAX_VALUE; //get positive values long pDividend = Math.abs((long)dividend); long pDivisor = Math.abs((long)divisor); int result = 0; while(pDividend>=pDivisor){ //calculate number of left shifts int numShift = 0; while(pDividend>=(pDivisor<<numShift)){ numShift++; } //dividend minus the largest shifted divisor result += 1<<(numShift-1); pDividend -= (pDivisor<<(numShift-1)); } if((dividend>0 && divisor>0) || (dividend<0 && divisor<0)){ return result; }else{ return -result; }}
0 0
- LeetCode: Divide Two Integers
- [LeetCode]Divide Two Integers
- LeetCode: Divide Two Integers
- [LeetCode] Divide Two Integers
- Divide Two Integers
- Divide Two Integers
- LeetCode28:Divide Two Integers
- [Leetcode] Divide Two Integers
- LeetCode Divide Two Integers
- Divide Two Integers
- 【leetcode】Divide Two Integers
- Divide Two Integers
- Divide Two Integers
- [LeetCode]Divide Two Integers
- Divide Two Integers
- LeetCode-Divide Two Integers
- Divide Two Integers
- 25 - Divide Two Integers
- 对工厂模式的理解
- 吝啬的国度 20 (dfs++vector的用法)
- css3 新增属性
- solr限制admin界面访问(端口限制和http授权限制)
- 软件测试面试题解析(一)
- Divide Two Integers
- Intent的概念及应用,以及Intentfilter过滤器的选项配置
- 结构体的思考
- 软件测试面试题解析(二)
- 递归分析
- noip2011 表达式的值 (模拟)
- 【软工视频—小小知识点(一)】
- 第一次“结对编程”的感想
- eclipse ide中folder、source folder、package 区别