
数据结构与算法 算法的时间复杂度是怎么求的
1个回答
展开全部
就是求一个多项式,比如for(i=0;i<n;i++);
这里做的次数是n次,那么这个复杂度就是O(n)
for(i=0;i<n;i++)for(j=i+1;j<n;j++);
这里做的次数是(n+1)*n/2
最高阶是n^2所以复杂度是O(n^2)
这里做的次数是n次,那么这个复杂度就是O(n)
for(i=0;i<n;i++)for(j=i+1;j<n;j++);
这里做的次数是(n+1)*n/2
最高阶是n^2所以复杂度是O(n^2)
追问
能不能解释下像O(log2n)还有O(n0.5)这类的 到底是怎么知道的
追答
log2n一般都写成log(n)
这个是以2为底的
比如
while(n>0)
{
n/=2;
}
这个做的次数是对数级的复杂度是log(n)的,这种复杂是非常不错的
O(n^0.5)是开方级的
for(i=0;i*i<=n;i++);这个就是开方级别的

2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询