下面的C++代码,用于求一系列数据中的最大值。有关其算法说法错误的是( )。
int find max(const vector<int>& nums){
if(nums.empty()){
throw invalid_argument("输入数组不能为空");
}
int max value = nums[0];
for(int num :nums){
if(num>max_value){
max_value = num;
}
}
return max_value;
}
本题 find_max() 函数采用的是迭代算法
本题 find_max() 函数的时间复杂度为O(n)
和上一题的 find_max() 相比,因为没有递归,所以没有栈的创建和销毁开销
本题 find_max() 函数和上一题的 find_max() 时间复杂度相同