算法分析-时间复杂度分析

恢恢乎游刃有余 恢恢乎游刃有余 2010-09-20 10:22:47
芜园楼主
芜园楼主

#include<iostream> using namespace std; #define N 6 int main() { int a[N],b[N],c[N]={0},d[N]={0}; int i,j,k=0,max=0; for (i=0;i<N;i++) cin>>a[i]; for (i=0;i<N;i++) { if(d[i]==0) { b[k]=a[i]; for (j=i+1;j<N;j++) { if(a[i]==a[j]) { c[k]++; d[j]=1; } } k++; } } for (i=0;i<k;i++) { if(max<c[i])max=c[i]; } cout<<"众数为: "<<endl;

    for (i=0;i&lt;k;i++)
    {
		if(c[i]==max)
		cout&lt;&lt;b[i]&lt;&lt;endl;
	}
	return 0;

}

这个的时间复杂度怎么分析哇

yangminjia
yangminjia
目测n平方
dragontx4db
dragontx4db

count *= 2; 的复杂度是O(logn),sum = count * (count+1)/2;是O(1);这里面有矛盾把,还我没理解对吗?

ElvisZhu
ElvisZhu(ElvisZhu)

恢恢乎游刃有余
恢恢乎游刃有余 (山东烟台)

男。。。 愤青。。。 爱生活,爱电影,也爱装逼。。。 我们不生产信息,...

热门话题  · · · · · ·  ( 去话题广场 )

×