java - 带 Set 的循环,是 O(n) 吗?

标签 java big-o

<分区>

我有这个 for 循环:

public void method(int[] arr) {
    Set set = new HashSet();

    for(int i = 0; i < arr.length; i++){
        set.add(arr[i]);
    }
}

这个方法是O(n)吗?

最佳答案

如果您使用 HashSet,HashSet 具有 O(1),您可以使用 for 循环将其与 O(n) 相乘。因此,整个构造具有 O(n)

关于java - 带 Set 的循环,是 O(n) 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15459455/

相关文章:

java - 使用java复制目录及其内容

algorithm - O(n!) 与 O((n+1)!) 相同吗?

string - 平均大小写大 O 和排序的影响

algorithm - 时间复杂度嵌套循环

c - 这段代码的复杂度(Big O)顺序是多少

java - 避免 .properties 文件 GNU Gettext java

java - 使用Android相机闪光灯+定时

java - 创建表时出现 hibernate 异常

algorithm - 为什么复杂性函数的减法是其中最小值的大 O?

java - 如何将 DateTimeFormatter 包含到项目中