首页 > 代码库 > CC150 19.4

CC150 19.4

19.4 Write a method which finds the maximum of two numbers. You should not use if-else or any other comparison operator. 

int max(int a, int b)
{
  int[] temp = {a, b};
  
  // If a > b, (a - b) >> 31 will be 0...000000;
  // Else, it will be 11111111..1; 
  // Thus, 
  int k = ((a - b) >> 31) & 1;  
  return temp[k];
}


CC150 19.4