时间复杂度nlogn
时间: 2024-01-02 19:21:09 浏览: 105
算法复杂度_百度百科
5星 · 资源好评率100%
时间复杂度为O(nlogn)的算法通常是将问题分成两个子问题,然后对每个子问题进行递归求解,最后将结果合并。典型的例子是归并排序和快速排序。以归并排序为例,其时间复杂度为O(nlogn)。具体步骤如下:
1.将待排序数组分成两个子数组,直到每个子数组只有一个元素。
2.将相邻的两个子数组合并成一个有序的数组,直到所有子数组都被合并成一个数组。
在第一步中,每次将数组分成两个子数组需要O(logn)的时间,因为需要递归logn次。在第二步中,每次合并两个有序数组需要O(n)的时间,因为需要遍历每个元素。因此,总时间复杂度为O(nlogn)。
阅读全文