Math O(N+;N)与大O表示法中的O(2N)相同吗?

Math O(N+;N)与大O表示法中的O(2N)相同吗?,math,runtime,Math,Runtime,如果我有一个程序有两个简单的循环,没有其他的,给我O(N+N)。由于时间的复杂性,大O符号是否允许我们将O(N+N)简化为O(2N)?如果不是,在时间复杂度方面两者有何区别。我为这个简单的问题道歉,但我刚刚开始学习这些概念,我的学习指南一直使用O(N+N)而不是O(2N),这让我很困惑。大O符号是一个非常有名的概念,因此网上有大量可用的资料。只需一次谷歌搜索。我不太清楚你为什么要问这里 特别是,维基百科有一篇很长的文章: 还有一节介绍了加法是如何使用这种符号的: 一个常见的误解是假定符号中的=实

如果我有一个程序有两个简单的循环,没有其他的,给我O(N+N)。由于时间的复杂性,大O符号是否允许我们将O(N+N)简化为O(2N)?如果不是,在时间复杂度方面两者有何区别。我为这个简单的问题道歉,但我刚刚开始学习这些概念,我的学习指南一直使用O(N+N)而不是O(2N),这让我很困惑。

大O符号是一个非常有名的概念,因此网上有大量可用的资料。只需一次谷歌搜索。我不太清楚你为什么要问这里

特别是,维基百科有一篇很长的文章:

还有一节介绍了加法是如何使用这种符号的:

一个常见的误解是假定符号中的
=
实际上是一个相等操作。而事实上,它是一个集合元素操作,通常写为

从技术上讲,您应该编写
f(x)∈ O(N)
。写入
f(x)=O(N)
是错误的,因为
O(N)
实际上是一组函数。它是所有函数的集合,其增长速度与线性函数一样快

两个函数之和的增长速度与线性函数一样快,其增长速度也与线性函数一样快

O(f)
是一组与
f
增长速度一样快的函数。
O(N+N)
O(2N)
都是与
O(N)
相同的集合。
所以,
O(N+N)=O(2N)=O(N)
这里,这个
=
实际上是设置相等操作。

实际上
O(2N)
O(N)
。请在元堆栈中发布exchange@DilipD:否,请不要在元堆栈交换中发布,因为此问题不属于那里。