我有一本字典:
{'Farage': [0, 5, 9, 192,233,341],
'EU': [0, 1, 5, 6, 9, 23]}
Query1: “Farage” and “EU”
Query2: “Farage” or “EU”
我需要返回包含这些查询的文档。例如,对于查询1,答案应该是[0,5,9]。 我相信答案应该是这样的,但在python中:
final_list = []
while x≠Null and y≠Null
do if docID(x)=docID(y)
then ADD(final_list, docID(x))
x← next(x)
y ←next(y)
else if docID(x) < docID(y)
then x← next(x)
else y ←next(y)
return final_list
请帮忙。你知道吗
请记住,使用转换为集合:
或者,如果字典可以直接以集合的形式出现,则更改输入的格式,即:
您可以使用^{} 创建自己的函数,Python提供了一种结构,通过加快joining和intersecting元素序列的进程,这种结构最适合您的情况:
结果:
注意:如果不需要任何排序,可以删除
sorted
函数。你知道吗您可以创建一个
dict
操作符并抛出set
操作以获得最终结果。它假设查询遵循严格的key1 operator key2 operator key3
规则对于任意数量的参数
输出
相关问题 更多 >
编程相关推荐