给定两个列表A和B,我想得到列表A中存在于列表B中的所有元素的索引。每个元素都是一个元组
我正在使用大小为40000个元素左右的列表
输入:
A = [(1,2),(3,4),(5,6),(7,8)]
B = [(1,2),(3,4),(5,6)]
预期产出:
[0,1,2]
我尝试了两种解决方案:
1)使用地图功能
m = map(a.index,b)
list(m)
2)使用列表理解
m = [a.index(item) for item in b if item in a]
这些方法似乎花费了太多的时间。有没有其他方法可以做到这一点
下面是你最好的选择。我使用一个集合(即,set(B)),因为搜索特定的元组可以在O(1)时间复杂度下完成
相关问题 更多 >
编程相关推荐