整数处理往往涉及溢出,一般的处理方案就是将整数转为long以后进行处理。
判断整数溢出的方式为,如果两个正数相加返回负数,则溢出。如果两个负数相加返回正数则溢出
题目描述:
https://leetcode.com/problems/divide-two-integers/description/
解题思路:
除法无法使用,可以通过加法来模拟,题目中注意的问题是如果每次只是增加divisor,速度过慢,会超时,所以通过加分模拟乘法的方式来加快速度。
代码
1 | public long findMultiply(long dividend, long divisor, boolean isNegative) { |
测试
1 | public void stringtoint() { |