0
点赞
收藏
分享

微信扫一扫

Python时间复杂度计算习题


计算时间复杂度是计算机科学中的重要技能,尤其是在算法和数据结构的领域。以下是关于Python时间复杂度计算的20个问题,这些问题可以用于测试对时间复杂度的理解:

  1. 对于以下代码片段,时间复杂度是多少?

for i in range(n):
       print(i)

  1. 下面代码的时间复杂度是?

for i in range(n):
       for j in range(n):
           print(i, j)

  1. 以下代码的时间复杂度是?

i = 1
   while i < n:
       i *= 2

  1. 这段代码的时间复杂度?

for i in range(n):
       for j in range(m):
           print(i, j)

  1. 以下列表推导的时间复杂度是?

[x for x in range(n) if x % 2 == 0]

  1. 下面代码的时间复杂度?

for i in range(n):
       pass
   for j in range(m):
       pass

  1. 给定一个列表,以下代码用于查找列表中的最大值。时间复杂度是?

max_value = lst[0]
   for num in lst:
       if num > max_value:
           max_value = num

  1. 以下二分查找代码的时间复杂度是?

while left <= right:
       mid = (left + right) // 2
       if arr[mid] == target:
           break
       elif arr[mid] < target:
           left = mid + 1
       else:
           right = mid - 1

  1. 这段递归代码的时间复杂度?

def factorial(n):
       if n == 1:
           return 1
       return n * factorial(n-1)

  1. 以下代码用于查找列表中的重复元素。时间复杂度是?

for i in range(len(lst)):
        for j in range(i + 1, len(lst)):
            if lst[i] == lst[j]:
                print("Duplicate found")

  1. 以下代码片段的时间复杂度是?

for i in range(n):
        for j in range(n):
            for k in range(n):
                print(i, j, k)

  1. 下列代码时间复杂度是?

for i in range(n):
        for j in range(m):
            for k in range(l):
                print(i, j, k)

  1. 以下代码用于计算列表的和。时间复杂度是?

total = 0
    for num in lst:
        total += num

  1. 以下代码的时间复杂度是?

i = n
    while i > 0:
        print(i)
        i //= 2

  1. 下列代码片段的时间复杂度是?

for i in range(n):
        for j in range(i):
            print(i, j)

  1. 以下代码时间复杂度是?

for i in range(n):
        for j in range(i, n):
            print(i, j)

  1. 对于以下代码,时间复杂度是?

k = 0
    for i in range(n):
        k = k + 1
    for j in range(m):
        k = k - 1

  1. 对于以下代码片段,时间复杂度是?

for i in range(n):
        print(i)
    for j in range(n, 0, -1):
        print(j)

  1. 这段递归代码的时间复杂度?

def fibonacci(n):
        if n <= 1:
            return n
        return fibonacci(n-1) + fibonacci(n-2)

  1. 下列代码片段的时间复杂度是?

for i in range(n):
        print(i)
    for j in range(m):
        print(j)


举报

相关推荐

0 条评论