【发布时间】:2015-04-14 00:26:56
【问题描述】:
有问题"Find the element repeated more than n/2 times"
您能否帮助估计使用随机的解决方案的时间复杂度:
- 随机选取数组中的元素
- 遍历数组并计算所选元素的出现次数
- 如果计数 > N/2 - 返回该元素。
- 从第 1 步开始重复。
如果我使用提供随机统一数字的完美随机生成器,这种方法最坏的情况是什么? O(N²)?
我的直觉说,平均而言,它应该在两次尝试中给出答案,但这只是平均情况。如何证明?我不太确定如何估计随机算法的运行时间。
【问题讨论】:
标签: algorithm random big-o complexity-theory