第21546题 单选题
给定C++ schedule函数的时间复杂度是多少

给定如下C++实现的schedule函数,求其时间复杂度:

#include <algorithm>
using namespace std;
struct activity {
    int id, start, end;
};
bool compare(activity a, activity b) {
    return a.end < b.end;
}
int schedule(int n, activity * p) {
    sort(p, p + n, compare);
    int cnt = 0, end = 0;
    for (int i = 0; i < n; i++) {
        if (p[i].start >= end) {
            end = p[i].end;
            cnt++;
        }
    }
    return cnt;
}
A

O(n)

B

O(log(n))

C

O(nlog(n))

D

O(n²)

程序运行统计
暂无判题统计