Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何计算程序的最坏情况(大O)

如何计算程序的最坏情况(大O)
EN

Stack Overflow用户
提问于 2013-05-31 23:46:06
回答 1查看 181关注 0票数 1

请原谅我故意说的话

下面是一个小程序节选:

代码语言:javascript
运行
AI代码解释
复制
for i=1 to n
  j= 0;
  while(j<=n);
  j=j+1;

如果我必须找到这段代码的复杂性(Big):

我将首先计算内循环将执行多少次,在本例中是n+1次数,因为从1到n是n次,而且由于j是0,所以它会添加到while循环中。因此,在时间循环的总n+1次数中。

外部for循环将执行的次数为n次,因为从1到n,总计数为n。因此,总计为n+1+n是2n+1。

舍弃所有常量,它是大O(n)。

这是正确的吗?我找到这个例子的网页上说,外部循环将运行n(n+1)/2时间。我不明白这点。请帮帮我!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-01 00:36:58

不是的。对于i获取的每个值(其中有n ),您可以运行while (内部)循环n+1 times (j=0、j=1、...j=n)。

因此,执行行j=j+1的总次数是n*(n+1),它位于O(n^2)中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16870389

复制
相关文章

相似问题

添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档