多数投票算法 博耶摩尔多数投票算法英語BoyerMoore majority vote algorithm中文常作多数投票算法摩尔投票算法等是一种用来寻找一组元素中占多数元素的常数空间级时间复杂度算法这一算法由罗伯特S博耶英语Robert S Boyer和J斯特罗瑟摩尔英语J Strother Moore在年发表也是处理数据流英语streaming algorithm的一种典型算法 这一算法应用的问题原型是在集合中寻找可能存在的多数元素这一元素在输入的序列重复出现并占到了序列元素的一半以上在第一遍遍历之后应该再进行一个遍历以统计第一次算法遍历的结果出现次数确定其是否为众数如果一个序列中没有占到多数的元素那么第一次的结果就可能是无效的随机元素对于数据流而言则不太可能在亚线性空间复杂度的情况下中就寻找到出现频率最高的元素而对于序列其元素的重复次数也有可能很低