问题标签 [code-complexity]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
168 浏览

insert - 找到插入 avl 树的复杂性

如果我有一棵空avl树并且我想插入一组有序数字 (1, 2, ... k),为什么复杂度是O(k).
谢谢你

0 投票
2 回答
3904 浏览

xcode - OCLint 生成 html 报告

我正在尝试从 OCLint 分析生成 html 报告。我已经安装了 xctool 并使用以下命令生成 json 文件:

现在我可以使用以下命令运行分析:

但报告打印在标准输出上。

OCLint 脚本有一个报告类型参数,所以我可以用这个命令创建一个 html 报告:

但我不能用 oclin-json-compilation-database 做到这一点。

我阅读了帮助页面(http://docs.oclint.org/en/dev/manual/oclint-json-compilation-database.html),我找到了一个oclint_args参数,但我不明白如何使用它。我试过了

但什么也没发生

0 投票
0 回答
56 浏览

c++ - 我已经解决了泛希腊竞赛的三个阶段中的第一个(现在已经结束)

我已经解决了泛希腊竞赛的三个阶段中的第一个(现在已经结束),但我很想知道是否有任何更简单的复杂性算法 7 9

5 7

4 2

3 6

2 3

1 7

6 2

4 6

1 5

3 4

它是关于一些地方(用数字表示)的前两个数字是地方的数量(orio)和匹配的数量(z)。这些地方以某种方式“连接”起来(毫无意义)。您应该会发现有多少地方的连接数少于 2,输出(在本例中为 c)是连接数少于 2 的地方的数量。k 是一个变量,用于临时插入每个数字并加上“看到”的次数。如果它被看到,则意味着它与另一个地方相连。我认为没有更简单的解决方案,但是我同行的一些程序需要更少的时间来运行,这让我很困扰

0 投票
2 回答
90 浏览

c - 需要帮助找出该算法的复杂性

嗨,我需要帮助找出这个算法的复杂性。您能否逐行回答复杂性,而不仅仅是最终结果?

算法如下:

任何帮助,将不胜感激!

谢谢

0 投票
1 回答
48 浏览

big-o - 概率函数可以用作计算代码复杂度的一部分吗

如何将概率函数作为代码复杂性分析的一部分。

此代码的典型复杂度分析将产生复杂度为 O(N^3)。

假设 cond1(l,n) 显着产生错误,因此在假设计算中跳过内部 for 循环。

我想尽可能准确地计算代码的复杂度,因为我想比较一系列类似算法的复杂度。

例如,我想用减少内部循环调用的不同算法集替换 cond1(l,n)。

如何尽可能准确地计算算法的复杂度。

我试图分析的代码的一个现实场景是 [link] Analyzing an index recursive function

0 投票
1 回答
90 浏览

python-2.7 - 我的 Python 程序的复杂性是多少?复杂性新手


上面的 python 代码有效,但我不确定程序的复杂性。谁能给我更多的见解?

实际问题如下:输入 [2,3,1,4] 输出 [12,8,24,6]

将所有字段相乘,除了它自己的位置。

限制: 1. 不使用除法 2. O(n) 中的复杂性

0 投票
2 回答
56 浏览

algorithm - 此循环的大 O 复杂度

以下循环的大 O 复杂度是多少:

我在这里做的是想象下面的集合 {1,2,3,4} 循环为这个数字的 2 个元素的所有组合执行一个函数,(1,2),(1,3),(1 ,4), (2,3), (2,4), (3,4)。

是 =(n^2) 其中 n 是集合中元素的数量吗?

0 投票
2 回答
123 浏览

software-design - 确认电子邮件作为数据元素类型 - 功能点

我了解 UI 上的确认消息被视为数据元素类型 (DET)。如果我的确认消息是 UI 上的警报框加上电子邮件确认怎么办。

我应该把它算作 1 个 DET 还是 2 个 DET

谢谢

0 投票
3 回答
1482 浏览

sonarqube - 为什么 return 语句会增加复杂性?

我将 SonarQube 用于 Java 项目,但复杂度计算对我来说并不清楚。以下示例的复杂度值为 3:

根据用户指南,复杂度计算如下:“它是圈复杂度,也称为 McCabe 度量。每当一个函数的控制流分裂时,复杂度计数器就会加一。每个函数的最小复杂度为 1。” 在详细描述中提到,return 语句将复杂度值加一(如果它不是方法中的最后一条语句)。我不明白为什么 return 语句会拆分控制流。在我看来,控制流中的每个 return 语句之后只有一种可能的方式。

0 投票
1 回答
24 浏览

time-complexity - 如何分析在不同情况下行为可能发生变化的程序的复杂性?

当我遇到这个问题时——使用两个堆栈来实现一个队列,我想知道如何分析它的复杂性。

以此为例

  • 对于 queue(),复杂度总是 O(1),因为它只是简单地推入收件箱。
  • 对于dequeue(),大部分时候复杂度也是O(1),但是当发件箱为空时,需要一个循环将所有元素从收件箱移动到发件箱。那么这个操作的复杂度是多少呢?

分析此类问题时的想法是什么?