|
发表于 2024-6-18 10:31:33
|
显示全部楼层
import random
import timeit
# 创建一个包含1000万个随机整数的列表
haystack = [random.randint(1, 10000000) for i in range(10000000)]
# 创建一个包含1000个随机整数的列表
needles = [random.randint(1, 1000) for i in range(1000)]
# 将 haystack 列表转换成集合
haystack_set = set(haystack)
# 定义查找函数
def find():
found = 0
for each in needles:
# 使用集合进行查找
if each in haystack_set:
found += 1
print(f"一共找到{found}个匹配。")
# 计算查找函数的执行时间
t = timeit.timeit("find()", setup="from __main__ import find", number=1)
print(f"查找过程一共消耗{t}秒。")
|
|