Divide Two Integers In O(1) Time Complexity
Divide two integers with O(log2N) time complexity using bitwise operations and handle edge cases for signed numbers.
Problem Tc : (log2N)2(log_2N) ^ 2(log2N)2 Sc: O(1) class Solution { public int divide(int dividend, int divisor) { //edges cases if(dividend == divisor) return 1; boolean positive = true; if(dividend <=0 && divisor >0) positive = false; else if(dividend >=0 && divisor <0) positive = false; long n = dividend; long d = divisor; n = Math.abs(n); d = Math.abs(d); long quotient = 0; while (n >= d) { int count = 0; while (n >= (d << (count + 1))) { count++;...