【问题标题】:What is the BigO of Collections.sort? [duplicate]Collections.sort 的 BigO 是什么? [复制]
【发布时间】:2014-09-14 05:55:35
【问题描述】:

我在两个列表中使用 collections.sort 来按字母顺序排列它们。 我将它放在一个函数中,我正在尝试确定它的 BigO

所以我想知道 Collections.sort(list) 的 BigO

    List list1 = new LinkedList();
    List list2 = new LinkedList();


    for(int i = 0; i < x.length(); i++){
        list1.add(x.charAt(i));
    }

    for (int i = 0; i < y.length(); i++){
        list2.add(y.charAt(i));
    }
    System.out.println(list1);
    Collections.sort(list1);
    System.out.println(list1);

    System.out.println(list2);
    Collections.sort(list2);

BigO 到底是什么? O(nlogn)?

【问题讨论】:

    标签: java algorithm sorting data-structures big-o


    【解决方案1】:

    引用javadoc:

    实现说明:此实现是一种稳定的、自适应的、迭代的归并排序,当输入数组部分排序时,它需要远少于 n 次 lg(n) 比较,同时在输入数组随机排序时提供传统归并排序的性能.如果输入数组接近排序,则实现需要大约 n 次比较。临时存储要求从几乎排序的输入数组的小常数到随机排序的输入数组的 n/2 对象引用不等。

    【讨论】:

      猜你喜欢
      • 2023-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-17
      • 2011-05-04
      • 1970-01-01
      • 2010-10-31
      • 2016-12-10
      相关资源
      最近更新 更多