这个程序的运行时复杂度是多少?(esp retainAll()方法)

时间:2013-03-19 05:14:23

标签: java list set

public static List<Integer> returnIntersection(List<Integer> a,List<Integer> b){

    List<Integer> l1=new ArrayList<Integer>(a);
    List<Integer> l2=new ArrayList<Integer>(b);
    l1.retainAll(l2);//find intersection in l2
    l1=removeDuplicates(l1);
    return l1;}

public static List<Integer> removeDuplicates(List<Integer> l) {

Set<Integer> se=new HashSet<Integer>(l);
l.clear();
l=new ArrayList<Integer>(se);
return l;}

上面的代码是返回一个包含两个列表的交集的列表,没有重复。我的问题是什么是时间复杂度? retainAll()方法的时间复杂度是多少?将列表转换成集合是否有时间消耗?

1 个答案:

答案 0 :(得分:2)

一个有趣的话题是衡量个别方法的复杂性。有几件事情会导致复杂性。

how to measure complexity

如何计算复杂度是非常好的网站