我创建的这个计算两个数组的交集是线性的方法的复杂度(在良好、平均、最差的情况下)? O(n)
public void getInt(int[] a,int[] b){
int i=0;
int j=0;
while(i<a.length && j<b.length){
if(a[i]==b[j]){
System.out.print(a[i]+" ");
i++;j++;
}else if(a[i]<b[j]) i++;
else if(a[i]>b[j]) j++;
}
}
最佳答案
是的,它是线性的。它是 O(m+n),其中 m 是 a 的长度,n 是 b 的长度
关于java - 复杂性 良好、中等和最差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14501699/