【问题标题】:What is the best case of quicksort for O(n)?O(n) 的快速排序的最佳情况是什么?
【发布时间】:2020-09-26 03:20:33
【问题描述】:

您能解释一下在最佳情况下如何对 O(N) 进行快速排序吗?为什么会有O(N)?

【问题讨论】:

标签: algorithm sorting complexity-theory quicksort dutch-national-flag-problem


【解决方案1】:

Quicksort 的最佳情况是O(nlogn)。使用 3 路快速排序时,最好的情况是 O(n)。

假设一个数组,其中每个元素都相等。基于c++中this的实现,partition函数只会被调用一次,因为所有元素都放在中间分区,等于pivot,那么以后调用quicksort函数就不会满足了if 条件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-12
    • 2020-12-05
    • 2020-06-20
    • 1970-01-01
    • 2021-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多