📜  TCS编码实践问题| 3个号码中最大的一个(1)

📅  最后修改于: 2023-12-03 14:47:53.594000             🧑  作者: Mango

TCS编码实践问题| 3个号码中最大的一个

问题描述

编写一个函数,接受三个参数,判断出三个参数中最大的一个,并返回该值。

函数定义

def max_of_three_numbers(num1: int, num2: int, num3: int) -> int:
    pass

解题思路

直接使用if语句进行比较即可,把第一个参数设为当前最大值,依次与后面的参数比较,如果后面的参数比当前最大值还大,则更新最大值。

def max_of_three_numbers(num1: int, num2: int, num3: int) -> int:
    max_num = num1
    if num2 > max_num:
        max_num = num2
    if num3 > max_num:
        max_num = num3
    return max_num

测试样例

assert max_of_three_numbers(1, 2, 3) == 3
assert max_of_three_numbers(3, 2, 1) == 3
assert max_of_three_numbers(2, 3, 1) == 3
assert max_of_three_numbers(1, 1, 2) == 2
assert max_of_three_numbers(2, 2, 2) == 2

复杂度分析

这个程序只需要进行一次比较,因此时间复杂度是O(1),空间复杂度也是O(1)。

总结

这道题目只是一个简单的比较问题,用if语句就能解决,但是在实际编写代码时,我们还需要考虑到复杂度与边界情况等问题,这样写出的代码才能真正实现需求,并具有可靠性。