LeetCode #1619. Mean of Array After Removing Some Elements

题目

1619. Mean of Array After Removing Some Elements


解题方法

先排序,然后根据长度计算出5%的位置,遍历数组中去掉首尾trim长度的部分,计算平均值。
时间复杂度:O(nlogn)
空间复杂度:O(1)


代码

class Solution:
    def trimMean(self, arr: List[int]) -> float:
        arr.sort()
        trim = len(arr) // 20
        avg = 0
        for i in range(trim, len(arr) - trim):
            avg += arr[i]
        avg /= len(arr) - trim * 2
        return avg
posted @ 2020-12-03 11:12  老鼠司令  阅读(87)  评论(0编辑  收藏  举报