第26585题
关于Python中isPrimeA()和isPrimeB()素数判断函数的时间复杂度,正确说法是

下面Python代码中的 isPrimeA() 和 isPrimeB() 都用于判断参数N是否为素数,有关其时间复杂度的正确说法是( )。

def isPrimeA(N):
    if N < 2:
        return False

    for i in range(2,N):
        if N % i == 0:
            return False
    return True

def isPrimeB(N):
    if N < 2:
        return False

    endNum = int(N ** 0.5)
    for i in range(2,endNum+1):
        if N % i == 0:
            return False
    return True

print(isPrimeA(13),isPrimeB(13))
A

isPrimeA() 的最坏时间复杂度是O(N) , isPrimeB() 的最坏时间复杂度是O(logN) , isPrimeA() 优于isPrimeB()

B

isPrimeA() 的最坏时间复杂度是O(N) , isPrimeB() 的最坏时间复杂度是 O(N^(1/2)), isPrimeB() 优于isPrimeA()

C

isPrimeA() 的最坏时间复杂度是 O(N^(1/2)), isPrimeB() 的最坏时间复杂度是 O(N), isPrimeA() 优于isPrimeB()

D

isPrimeA() 的最坏时间复杂度是 O(logN), isPrimeB() 的最坏时间复杂度是 O(N), isPrimeB() 优于isPrimeB()

提交0次 正确率0.00%
答案解析