LeetCode 面试题 16.07. 最大数值

128 阅读1分钟

题目地址(16.07. 最大数值)

leetcode-cn.com/problems/ma…

题目描述

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

示例:

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

思路

数学思路

代码

  • 语言支持:Python3

Python3 Code:


class Solution:
    def maximum(self, a: int, b: int) -> int:
        ret = (abs(a-b)+a+b)//2
        return ret

复杂度分析

令 n 为数组长度。

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