#lbc21101. 时间复杂度

时间复杂度

程序1:

#include<iostream>
using namespace std;
int main(){
    int a,b=5;
    cin>>a;
    if(a<50){
        if(a<5){
            b+=a;
        }else{
            b=a-b;
        }
    }
    else{
        b++;	
    }       
    cout<<b;
    return 0;
}

输入:50

该程序的时间复杂度T(n)=O(1)

{{ select(1) }}

程序2:

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    int sum = 0;
    for (int i = 1; i <= n; ++i) {   
        sum += i;
    }
    cout << sum << endl;           
    return 0;
}

该程序的时间复杂度T(n)=O(n)

{{ select(2) }}

程序3:

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    int count = 0;
    for (int i = 1; i < n; i *= 2) { 
        count++;
    }
    cout << count << endl;          
    return 0;
}

该程序的时间复杂度T(n)=O(log n)

{{ select(3) }}

程序4:

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    int count = 0;
    for (int i = 0; i < n; ++i) {      
        for (int j = 0; j < n; ++j) {   
            count++;
        }
    }
    cout << count << endl;              
    return 0;
}

该程序的时间复杂度T(n)=O(n²)

{{ select(4) }}

程序5:

#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    int count = 0;
    for (int i = 0; i < n; ++i) {          
        for (int j = 0; j < n; ++j) {       
            for (int k = 0; k < n; ++k) {   
                count++;
            }
        }
    }
    cout << count << endl;                  
    return 0;
}

该程序的时间复杂度T(n)=O(n³)

{{ select(5) }}