【发布时间】:2012-09-14 20:01:24
【问题描述】:
我正在阅读有关通过median-of-medians 算法在ardendertat 查找数组中第k 个最高元素的文章。在解释复杂性的部分,作者似乎忽略了一个因素,即递归查找每个分区的median-of-medians 的成本。当然,我不能按初始枢轴对所有子阵列进行分区,对吧?那么这不会增加复杂性吗?
【问题讨论】:
-
找到中位数的成本是线性的。
-
是的,但是我们必须在每个递归调用中对每个分区都这样做,对吧?那么这不会加起来吗?
-
关于分区工作本身也可以问同样的问题,这也是线性的。但你不是问它,为什么?
-
嗯,我不知道!实际上现在我发现我根本不理解复杂性方程!如果你能解释清楚一点,那将是非常有帮助的。
标签: python algorithm median-of-medians