【发布时间】:2021-05-23 10:21:57
【问题描述】:
假设我有一个列表,其中包含 0 到 9 范围内的 5 个唯一整数。
import random
lst = random.sample(range(10), 5)
我还有一个list的list,是把0到19的整数分成6组得到的:
partitions = [[8, 12], [2, 4, 16, 19], [1, 6, 7, 13, 14, 17], [3, 15, 18], [5, 9, 10, 11], [0]]
现在我想根据引用 partitions 拆分 lst。
例如,如果我有
lst = [0, 1, 6, 8, 9]
我希望输出是这样的列表列表:
res = [[0], [1, 6], [8], [9]]
我希望算法尽可能快。有什么建议吗?
【问题讨论】:
-
这里的常数因子是什么?您是否需要基于同一个
partitions为多个lst完成这项工作,反之亦然,还是每个任务都使用不同的值? -
当然
partitions是常数因子。我不明白描述中如何不清楚。
标签: python list algorithm performance partitioning