【发布时间】:2011-05-22 11:52:43
【问题描述】:
如何使用分而治之的算法来确定数组中至少一半的对象是否返回 true(在某些函数上)?对象没有可枚举的值,因此对象 A 绝不大于对象 B。
为了澄清,使用该函数将所有对象相互比较。所以 funct(Obj a, Obj b) 根据某些标准返回真或假。它们可以聚集在一起,我们只想知道是否至少有一半的比较对象返回 true。
【问题讨论】:
-
那些会为该函数返回 true 的函数是否聚集在一起?
-
澄清一下,使用该函数将所有对象相互比较。所以 funct(Obj a, Obj b) 根据某些标准返回真或假。它们可以聚集在一起,我们只想知道是否至少有一半的比较对象返回 true。
-
您是要对所有元素对进行比较,还是要将数组的所有元素与已知值进行比较,例如如果数组是整数,你想知道一半是否是个位数?
-
比较所有要比较的元素对。例如:a,b,c 比较 (a,b), (a,c), (b,c) 但我需要知道是否至少有一半返回 true。这些对象是不可比较的,必须是 O(nlogn)
标签: algorithm divide-and-conquer