【发布时间】:2013-12-23 03:45:30
【问题描述】:
我想找出列表m的哪些项目完全由列表w的项目组成。
如果我将它们添加到集合中并进行拦截,嵌入式结构将变得不可见,这正是我想要避免的。
案例:
w= [
['sta'],
['co', 'si'],
['non'],
['si'],
['puo'],
['ap', 'ri', 're'],
['ve', 'dia', 'mo'],
['co', 'sa'],
['ci'],
['pot', 'reb', 'be']
]
m=[
['sta', 'co'],
['puo', 'ap', 'ri', 're'],
['ve'],
['dia', 'mo'],
['co'],
['sa'],
['ci', 'pot', 'reb', 'be']
]
期望的输出:
[['puo', 'ap', 'ri', 're'], ['ci', 'pot', 'reb', 'be']]
(例如,来自m 的['puo', 'ap', 'ri', 're'] 由来自w 的两个项目组成:[['puo'], ['ap', 'ri', 're']])。
谢谢大家!
【问题讨论】:
-
您只想从手术中得到真/假答案吗?此外,除非列表很小,否则您似乎希望使用一个集合,然后在完成后将其丢弃,否则会很慢。
-
原则上我还想要 m 中包含 w 中项目的项目列表。而且名单很大。
标签: python list recursion dynamic-programming nested-lists