一共是5道,因为缺席了半个月的课,现在听不懂了,求帮忙,谢谢
4条回答 默认 最新
- Java大魔王 2022-11-04 08:37关注
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()
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 在若依框架下实现人脸识别
- ¥15 网络科学导论,网络控制
- ¥100 安卓tv程序连接SQLSERVER2008问题
- ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
- ¥15 metadata提取的PDF元数据,如何转换为一个Excel
- ¥15 关于arduino编程toCharArray()函数的使用
- ¥100 vc++混合CEF采用CLR方式编译报错
- ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
- ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
- ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同