假设我有 2 套,如:
A = { 1, 4, 7, 10, 11, 12 }
B = { a, b, x, y, z }
我有一个函数可以确定 A 中的一个元素是否与 B 中的另一个元素相关:
bool isRelated(a, b)
我想从 A 和 B 中删除没有任何相关元素的元素。我怎样才能做到这一点?1个简单的方法是:
forEach a in A:
related = 0
forEach b in B:
if isRelated(a, b):
related++
break
if related == 0
A.remove(a)
// then I need to do something similar for B
在我看来效率很低。有没有更好的办法?一定会有更好的办法?