"""
设计:Python程序设计
作者:初学者
日期:2022年 04月 18日
"""
# 例103 主元素
# 1.问题描述
# 给定一个整数数组,找到主元素,该主元素在数组中的出现次数大于数组元素个数的1/3.
# 2.问题示例
# 输入[99,2,99,2,99,3,3],输出99;输入[1,2,1,2,1,3,3],输出1.
# 3.代码实现
class Solution:
"""
参数nums:整数数组
返回值:主元素
"""
def find_major_element(self, nums):
nums.sort()
i, j = 0, 0
while i <= len(nums):
j = nums.count(nums[i])
if j > len(nums) // 3:
return nums[i]
i += j
return nums
# 主函数
if __name__ == '__main__':
s = Solution()
nums = [99, 2, 99, 2, 99, 3, 3]
nums1 = [1, 2, 1, 2, 1, 3, 3]
print("输入:", nums)
print("输入:", nums1)
print("输出:", s.find_major_element(nums))
print("输出:", s.find_major_element(nums1))
查找主元素
最新推荐文章于 2023-11-20 19:39:44 发布