LeetCode 1619. 删除某些元素后的数组均值缩略图

给你一个整数数组 arr ,请你删除最小 5% 的数字和最大 5% 的数字后,剩余数字的平均值。

与 标准答案 误差在 10-5 的结果都被视为正确结果。

1619. 删除某些元素后的数组均值 – 力扣(Leetcode)

LeetCode 1619. 删除某些元素后的数组均值插图

OpenCV步步精深-可心科创工作室

LeetCode 1619. 删除某些元素后的数组均值插图1

OpenCV步步精深-可心科创工作室

思路:

计算出5%是多少,由于arr长度是20倍数,所以计算后直接截断即可。

python3实现:

class Solution:
    def trimMean(self, arr: List[int]) -> float:
        # 先计算出5%是多少,然后截断
        arr.sort()
        p_5 = len(arr) * 0.05
        start = int(0 + p_5)
        end = int(-1 - p_5 + 1)
        return sum(arr[start:end]) / len(arr[start:end])

LeetCode 1619. 删除某些元素后的数组均值插图2

OpenCV步步精深-可心科创工作室
更多干货见 OpenCV步步精深

作者 admin

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注