var a = [1,3,4,11,32,45,222,98,111,333,231];
var b = [1,3,11,45,98]
求这个两个数组的位置连续部分的交集。
比如上面两个数组返回[1,3]
var a = [1,3,4,11,32,45,222,98,111,333,231];
var b = [1,3,11,45,98]
求这个两个数组的位置连续部分的交集。
比如上面两个数组返回[1,3]
def intersect(A, B):
seen = set(A)
ans = []
for num in B:
if num in seen:
ans.append(num)
return ans
测试:
A = [1,3,4,11,32,45,222,98,111,333,231]
B = [1,3,11,45,98]
intersect(A, B)
想更骚一点的话:
list(set(A) & set(B))
1 回答3.4k 阅读✓ 已解决
1 回答2.8k 阅读
2.5k 阅读
1 回答554 阅读✓ 已解决
1 回答1.2k 阅读
1 回答523 阅读✓ 已解决
不好意思没看懂你的问题,连续指的是数值上的连续还是位置上的连续?交集是对哪个生成集合的交集?
是两个数组所有相同元素组成的集合,返回其中的数值连续的部分么?