一共是5道,因为缺席了半个月的课,现在听不懂了,求帮忙,谢谢

import numpy as np
import random
import time
import matplotlib.pyplot as plt
# 生成随机整数列表
def create_list(n):
nums = []
for i in range(0, n):
nums.append(random.randint(0, 100))
return nums
# 求两个列表的点积
def list_dot(K, L):
if len(K) == len(L) and len(K) != 0:
return sum([K[n] * L[n] for n in range(len(K))])
else:
return 0
# 生成随机整数numpy数组
def create_numpy(n):
return np.random.randint(0, 100, n)
# 计算numpy点积
def numpy_dot(K, L):
return np.dot(K, L)
if __name__ == '__main__':
x = []
list_y = []
numpy_y = []
# 循环十次,用于matplotlib绘图数据
for i in range(1, 11):
list_one = create_list(i * 1000)
list_two = create_list(i * 1000)
list_dot_start = time.time()
list_dot_result = list_dot(list_one, list_two)
list_dot_end = time.time()
numpy_one = create_numpy(i * 1000)
numpy_two = create_numpy(i * 1000)
numpy_dot_start = time.time()
numpy_dot_result = numpy_dot(numpy_one, numpy_two)
numpy_dot_end = time.time()
list_dot_diff = list_dot_end - list_dot_start
numpy_dot_diff = numpy_dot_end - numpy_dot_start
x.append(i * 1000)
list_y.append(list_dot_diff)
numpy_y.append(numpy_dot_diff)
# 绘图
plt.rcParams["font.sans-serif"] = ["SimHei"] # 设置字体
plt.rcParams["axes.unicode_minus"] = False # 该语句解决图像中的“-”负号的乱码问题
plt.figure(figsize=(12, 8))
plt.plot(x, list_y, color='red')
plt.plot(x, numpy_y, color='blue')
plt.ylabel("函数运行时间")
plt.xlabel("数据大小")
plt.grid()
plt.show()
