GESP C++ 真题 · 逐题精解
首页C++五级真题 › 2024年9月 › 第7题

GESP 2024年9月 C++五级 单选题 第7题

C++五级单选题2024年9月第7题

所属知识点:复杂度分析 难度要求:掌握 考频:—

下面函数可以将 n 的所有质因数找出来,其时间复杂度是( )。
#include <iostream>
#include <vector>
vector<int> get_prime_factors(int n) {
vector<int> factors;
while (n % 2 == 0) {
factors.push_back(2);
n /= 2;
}
for (int i = 3; i * i <= n; i += 2) {
while (n % i == 0) {
factors.push_back(i);
n /= i;
}
}
if (n > 2) {
factors.push_back(n);
}
return factors;
}

正确答案:C

题目解析

质因数分解先除尽 2,再从 3 试到 √n,时间复杂度约 O(√n log ………

完整解析为会员内容二级及以上的逐题精讲需开通 VIP。一级解析全部免费。前往 GESPPASS 解锁

想系统刷完 GESP C++ 1~8 级真题,并查看每道题的逐题精讲?

进入 GESPPASS 开始练习