【发布时间】:2018-10-03 11:58:18
【问题描述】:
考虑 2 个正整数数组。 我们得到了一些预定义的整数常量N。 现在,我们必须找到对,其中 1 个元素来自 1 个数组,2 个元素来自第二个数组,使得整数之和等于 N。 如果没有找到这样的对,则返回与 N 最接近(但不超过)的对(如果它们的和相等,则可以是几对)
我想到了唯一的解决方案: 遍历所有可能的对, 如果我们遇到一对更近的距离,清理生成的数组并将其放在那里。 如果我们遇到精确距离的对,清除距离较小的对并将其放入结果数组中。
我相信有更有效的方法来解决问题,您对此有什么想法吗?
【问题讨论】:
-
对数组进行排序,通过类似二分法的搜索仅遍历少数元素。
标签: algorithm