方法的总时间复杂度

时间:2016-01-11 08:29:25

标签: big-o

伙计,假设我有一个名为sortAndPrint(int[] array)的方法。在方法内部,我有一个算法,使用Quicksort算法对array进行排序,然后打印array的所有元素。我的问题是,这两项操作的总时间复杂度 - 排序和打印 - 是O(n)还是O(n + logN)?提前谢谢!

public void sortAndPrint(int[] array){
    //Use Quicksort alrogithm to sort the array first
    ...........
    ...........

   //Print all of the elements of the array
   ..........
   ..........

}

2 个答案:

答案 0 :(得分:0)

O(nlogn)+O(n)O(nlogn)(平均快速排序O(nlogn)最坏情况O(n^2)

O(nlogn)支配O(n) ..所以它是O(nlogn)。整个程序复杂。就这么简单。

对于大n,快速排序将比O(n)打印花费更多时间。

注意:您如何提出O(n+logn)?不应该是O(n+nlogn)吗?

答案 1 :(得分:-1)

是O(nlogn)。在符号O(n)+ O(n)+ O(n)= O(n)