1
我必须找到获得两个不同大小数组的公共元素的最佳方法。在两个不同大小的数组中寻找共同元素
这些数组是无序的;共同要素是在不同的位置上,但以相同的顺序(如果阵列中的一个共同的元件b一个之后来到,相同的数组B中发生的),并与最大距离N.
我不能t使用更多的O(N)空间。
实际上,我从数组A中提取N个元素,使用mergesort对它们进行排序,并使用数组B的N个元素执行双子集搜索。然后从我找到的匹配位置获取下一个N元素并执行另一个循环。
这样做的成本应,使用米作为阵列B的长度,O(m×n个对数N)
我曾尝试使用散列表,但管理碰撞我要实现一个列表,效率下降。
还有更好的办法吗?