Loading... > https://leetcode.cn/problems/average-salary-excluding-the-minimum-and-maximum-salary/description/?envType=daily-question&envId=2024-05-02 简单题,遍历一遍找出最大值最小值和总和,直接计算即可。`salary.length >= 3` ,甚至不需要考虑两个数相同的情况。 ```c++ class Solution { public: double average(std::vector<int>& salary) { int minValue = INT_MAX, maxValue = 0, sum = 0; for (const auto &wage : salary) { if (wage < minValue) minValue = wage; if (wage > maxValue) maxValue = wage; sum += wage; } return (double)(sum - minValue - maxValue) / (double)(salary.size() - 2); } }; ``` - 时间复杂度:$O(n)$ 。 - 空间复杂度:$O(1)$ 。 最后修改:2024 年 05 月 06 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏