我给出了包含正整数的两个数组(可以包含重复项和相同长度)。当数字只能在两个数组中使用一次时,我必须找到绝对差异小于等于特定值(给定)的最大对数。如何找到差值小于特定值的最大对数?
例如:
arr1 = {1,2,3,4}
arr2 = {8,9,10,11}
diff = 5
然后,可以对为(3,8),(4,8)。也就是说,只有两种这样的可能配对。
输出应该为2
另外,我能想到的算法中的此在为O(n^2)。但是,我需要更好的东西。我想过哈希映射(不会工作,因为数组包含重复项),想到按降序和升序对数组进行排序,并没有真正能够从那里向前移动。
你的第二句话没写清楚。你的意思是:“我必须找到绝对差值小于或等于给定值的唯一对数。” –
是的,但是如果数字一旦用来组成一对,他们就不能再次使用。 –
我正在投票结束这个问题,因为这是一个正在进行的竞争,将在一天内完成。 –