Time 该算法的时间复杂度,主要针对第4行如何确定 void程序B(int n){ 长prod=1; 对于(int c=1;c

Time 该算法的时间复杂度,主要针对第4行如何确定 void程序B(int n){ 长prod=1; 对于(int c=1;c,time,time-complexity,complexity-theory,Time,Time Complexity,Complexity Theory,如果你没有参加考试,而且时间很充裕,我总是建议你尝试一些数字: void programB(int n) { long prod = 1; for (int c=1;c<n;c=c*3) prod = prod * c; 正如你所看到的,迭代次数不仅少于n^3,而且远远少于n。基本上,你可以检查在这个循环中,你可以在n内乘以3的次数,这是我的提示。如果你不是坐在测试中,而且时间很充裕,我总是建议你尝试一些数字: void programB(int n) {

如果你没有参加考试,而且时间很充裕,我总是建议你尝试一些数字:

void programB(int n) {
    long prod = 1;
    for (int c=1;c<n;c=c*3)
        prod = prod * c;

正如你所看到的,迭代次数不仅少于
n^3
,而且远远少于
n
。基本上,你可以检查在这个循环中,你可以在
n
内乘以3的次数,这是我的提示。

如果你不是坐在测试中,而且时间很充裕,我总是建议你尝试一些数字:

void programB(int n) {
    long prod = 1;
    for (int c=1;c<n;c=c*3)
        prod = prod * c;
正如您所看到的,迭代次数不仅少于
n^3
,而且远远少于
n
。基本上,您可以检查在这个循环中,您可以在
n
内乘以3的次数,这是我的提示。

如果您有

n=10:
c = 1, 3, 9

n=20:
c = 1,3,9

n=30:
c=1,3,9,27
对于每个
n
事物,它贯穿
n
事物,给你O(n^2)

要获得n^3,您需要另一个for循环:

void programB(int n) {
    long prod = 1;
    for (int c=1;c<=n;c=c+1)
        for (int c=1;c<=n;c=c+1)
            prod = prod * c;
void程序B(int n){
长prod=1;
对于(int c=1;c如果

n=10:
c = 1, 3, 9

n=20:
c = 1,3,9

n=30:
c=1,3,9,27
对于每个
n
事物,它贯穿
n
事物,给你O(n^2)

要获得n^3,您需要另一个for循环:

void programB(int n) {
    long prod = 1;
    for (int c=1;c<=n;c=c+1)
        for (int c=1;c<=n;c=c+1)
            prod = prod * c;
void程序B(int n){
长prod=1;

for(int c=1;c此for循环的时间复杂度为logn基a

void programB(int n) {
    long prod = 1;
    for (int c=1;c<=n;c=c+1)
        for (int c=1;c<=n;c=c+1)
            for (int c=1;c<=n;c=c+1)
                prod = prod * c;
intn,a;

for(int c=1;c此for循环的时间复杂度为logn基a

void programB(int n) {
    long prod = 1;
    for (int c=1;c<=n;c=c+1)
        for (int c=1;c<=n;c=c+1)
            for (int c=1;c<=n;c=c+1)
                prod = prod * c;
intn,a;

对于(int c=1;cI认为“顺序仍然是O(n)”是错误的。看看我的答案。对于
n=30
,例如,你预测了10次迭代。如果
n
,差异只会变得更大。对于
n=300
,你将有6次迭代,而不是100次。这是log n base 3Yep-没有注意。@Manny Nice Manny。我认为“但订单仍然是O(n)“是错误的。看看我的答案。例如,对于
n=30
,你预测了10次迭代。如果
n
,差异只会变得更大。对于
n=300
,你将有6次迭代,而不是100次。是log n base 3Yep-没有注意。@Manny Nice Manny。对不起,我刚从eclipse复制了。现在编辑。这个好吗?:-)对不起,我刚从eclipse中复制。正在编辑。这好吗?:-)