关键:
1.学会使用位运算
2.被除数减小,除数增大
class Solution {
public:
int divide(int dividend, int divisor) {
if(dividend == 0) return 0;
if (dividend == INT_MIN && divisor == -1) {
return INT_MAX;
}
int symbol = (dividend >0 && divisor<0 || dividend<0 && divisor>0) ? -1:1;
long div = abs(dividend);
long dis = abs(divisor);
long num = 0;
while(div>=dis)
{
long temp=dis,mid=1;
while(div>=(temp<<1))
{
mid<<=1;
temp<<=1;
}
num+=mid;
div-=temp;
}
return symbol == 1?num:-num;
}
};



