下面的 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()
本题 find_max() 函数的时间复杂度为 O(n)O(n)O(n)
本题 find_max() 函数没有使用递归,因此不会因为递归调用次数过多而导致栈溢出。
本题 find_max() 函数和上一题的 find_max() 空间复杂度相同