python 查找数字列表中的多数元素
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 查找数字列表中的多数元素相关的知识,希望对你有一定的参考价值。
# Uses python3
import sys
def get_majority_element(a, left, right):
if left == right:
return -1
if left + 1 == right:
return a[left]
mid = (left + right - 1) // 2 + 1
left_m = get_majority_element(a, left, mid)
right_m = get_majority_element(a, mid, right)
left_count = 0
for i in range(left, right):
if a[i] == left_m:
left_count += 1
if left_count > (right - left) // 2:
return left_m
right_count = 0
for i in range(left, right):
if a[i] == right_m:
right_count += 1
if right_count > (right - left) // 2:
return right_m
return -1
if __name__ == '__main__':
input = sys.stdin.read()
n, *a = list(map(int, input.split()))
if get_majority_element(a, 0, n) != -1:
print(1)
else:
print(0)
以上是关于python 查找数字列表中的多数元素的主要内容,如果未能解决你的问题,请参考以下文章