美文网首页
LeetCode题解之最大数值

LeetCode题解之最大数值

作者: l1fe1 | 来源:发表于2020-09-05 09:58 被阅读0次

最大数值

题目描述

编写一个方法,找出两个数字a和b中最大的那一个。不得使用if-else或其他比较运算符。

示例 :

输入: a = 1, b = 2
输出: 2

解题思路

利用数学公式,在数学上两个数的最大值可以通过如下公式来进行计算:
\max(a,b) = \frac {|a - b| + a + b} {2}

复杂度分析

  • 时间复杂度:O(1)。
  • 空间复杂度:O(1)。

代码实现

class Solution {
    public int maximum(int a, int b) {
        long c = a;
        long d = b;
        int res = (int) ((Math.abs(c - d) + c + d) / 2);
        return res;
    }
}

相关文章

网友评论

      本文标题:LeetCode题解之最大数值

      本文链接:https://www.haomeiwen.com/subject/ldxxektx.html