Java内置函数Collections.frequency(list,element)的复杂性是多少?



以下代码适用于字符串的数组列表。我想知道Collections.frequency()函数的复杂性是什么。

List<String> list = new ArrayList<>();
list.add("sample");
list.add("sample1");
list.add("sample");
list.add("sample");
list.add("sample");
list.add("sample");
System.out.println("sample is repeated : " + Collections.frequency(list, "sample"));

Collections.frequency具有以下实现(在Java 9(:

public static int frequency(Collection<?> c, Object o) {
    int result = 0;
    if (o == null) {
        for (Object e : c)
            if (e == null)
                result++;
    } else {
        for (Object e : c)
            if (o.equals(e))
                result++;
    }
    return result;
}

所以是 O(n)

最新更新