复杂性:条件运算符与 if-else
Complexity: Conditional operator vs if-else
我正在使用 Java 开发一个简单的代码算法,我想知道在计算时间复杂度时 ? :
和 if-else
之间可能存在差异。我认为它们都具有相同的时间复杂度,但我不确定...
例如:
if (number == num) {
count += 1;
}
else {
count -= 1;
}
和
count += (number == num) ? 1 : -1;
如果你能告诉我它们之间的区别,真的谢谢你:-)
没有区别,两个构造都在Theta(1)
,所以恒定时间。
显然不是在谈论他们的内容。但在你的情况下,即使是内容也是恒定的。所以你的两个片段 运行 在 Theta(1)
时间内。
我正在使用 Java 开发一个简单的代码算法,我想知道在计算时间复杂度时 ? :
和 if-else
之间可能存在差异。我认为它们都具有相同的时间复杂度,但我不确定...
例如:
if (number == num) {
count += 1;
}
else {
count -= 1;
}
和
count += (number == num) ? 1 : -1;
如果你能告诉我它们之间的区别,真的谢谢你:-)
没有区别,两个构造都在Theta(1)
,所以恒定时间。
显然不是在谈论他们的内容。但在你的情况下,即使是内容也是恒定的。所以你的两个片段 运行 在 Theta(1)
时间内。