乘法(a,b)函数的时间复杂度

时间:2018-12-05 20:33:41

标签: python-3.x time-complexity

以下函数的时间复杂度/增长顺序是多少?

def multiply(a, b):
    '''Takes two integers and computes their product.'''
    res = 0
    for i in range(1, b+1):
        res += a
    return res

我知道b的大小使它线性,但是a的大小呢?

谢谢!

1 个答案:

答案 0 :(得分:0)

'a'的大小不会影响算法的时间复杂度。由于您要执行b次加法,因此复杂度约为'b'。 O(b)是函数的数学性质,而不是函数的精确表征。确切的运行时间可能是2045 * b + 3542,其中常量2045和3542(此处仅作为示例说明)将取决于输入和输入的大小,在此引用变量'a'的大小。问题

因此,a的大小会影响代码的运行时间,而不影响代码的时间复杂度。