User
protected static int calculateShift(int minimumValue, int maximumValue) { int target = Math.min(minimumValue, maximumValue); if (target > 0) return 32 - Integer.numberOfLeadingZeros(target - 1); else return 0; }
protected static int calculateShift(int minimumValue, int maximumValue) { int target = Math.min(minimumValue, maximumValue); if (target > 1) return Integer.highestOneBit(target - 1) << 1; else return 1; }