这个带有布尔列表索引的表达式做什么?

2024-07-05 14:26:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我在解决一些算法问题时,在其中一个解决方案中看到了这个表达式,但不知道是什么

return [b, a][nums.count(a) > len(nums)//2]

以防需要完整的代码

def majorityElement6(self, nums):
    if not nums:
        return None
    if len(nums) == 1:
        return nums[0]
    a = self.majorityElement(nums[:len(nums)//2])
    b = self.majorityElement(nums[len(nums)//2:])
    if a == b:
        return a
    return [b, a][nums.count(a) > len(nums)//2]

Tags: 代码self算法nonelenreturnif表达式