我得到了一组球,我的最终目标是找到至少一半的球是相同的颜色。我每次只能挑两个球来决定它们是不是同一种颜色那么,如何设计一个采用o(n logn)判定的分治算法来解决这个问题呢?如果有人知道这个问题,非常感谢!
最佳答案
也许你可以倒着做——如果你不知道比较中的答案,那么只有不到一半的球是同一颜色的合并排序分组。。。
r g r b r y r r // worst case arrangement
rg rb ry rr
↓ // 3 * (n / 4) comparisons
rr gb rrr y
↓ // 3 * (n / 8) comparisons
rrrrr gby
关于algorithm - 设计采用O(n log n)确定的分治法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32446957/