多数投票算法

✍ dations ◷ 2025-12-03 00:35:43 #算法

博耶-摩尔多数投票算法(英语:Boyer–Moore majority vote algorithm),中文常作多数投票算法、摩尔投票算法等,是一种用来寻找一组元素中占多数元素的常数空间级时间复杂度算法。这一算法由罗伯特·S·博耶(英语:Robert S. Boyer)和J·斯特罗瑟·摩尔(英语:J Strother Moore)在1981年发表,也是处理数据流(英语:streaming algorithm)的一种典型算法。

这一算法应用的问题原型是在集合中寻找可能存在的多数元素,这一元素在输入的序列重复出现并占到了序列元素的一半以上;在第一遍遍历之后应该再进行一个遍历以统计第一次算法遍历的结果出现次数,确定其是否为众数;如果一个序列中没有占到多数的元素,那么第一次的结果就可能是无效的随机元素。对于数据流而言,则不太可能在亚线性空间复杂度的情况下中就寻找到出现频率最高的元素;而对于序列,其元素的重复次数也有可能很低。

算法可以用伪代码如下表示:

即便输入序列没有多数元素,这一算法也会返回一个序列元素。然而如果能够进行第二轮遍历,检验返回元素的出现次数,就能判断返回元素是否为多数元素。因此算法需要两次遍历,亚线性空间算法无法通过一次遍历就得出输入中是否存在多数元素。

相关

  • 卵巢滤泡囊肿卵巢滤泡囊肿(英语:follicular cyst of ovary, follicular cyst),或囊状滤泡囊肿(英语:graafian follicle cyst)是一类单纯滤泡囊肿,也是最常见的一类卵巢囊肿。这类疾病发生于未发
  • 赵进东赵进东(1956年11月-),生于重庆,原籍江苏武进,中国植物生理学及藻类学家,北京大学生命科学学院教授。1956年生于重庆,原籍江苏武进。1982年毕业于西南师范大学,1990年在美国德克萨斯大
  • 丹尼尔·布恩丹尼尔·布恩国家森林(英语:Daniel Boone National Forest)是唯一一座完全位于肯塔基州境内的国家森林。该森林设立于1937年,起初名为坎伯兰国家森林(Cumberland National Forest
  • 深圳信息职业技术学院深圳信息职业技术学院(简称:深信息,英语:Shenzhen Institute & Information Technology,缩写:SZIIT)是于2002年4月创办的一所全日制高等院校。校园位于中国广东省深圳市龙岗区大运
  • 固始固始县,别称“蓼城”,是中国河南省信阳市下辖的一个县,是河南省直管县之一,地处河南省东南隅,南依大别山,北临淮河,属北方与南方、中原与江淮的交融地带。总面积2942.97平方公里,201
  • 热微菌门热微菌门(Thermomicrobia)是一类绿非硫细菌。正如名字所说,是一类嗜热菌。一些学者认为热微菌不构成单独的一个门,而应该并入另一类绿非硫细菌——绿弯菌门(Chloroflexi)。
  • 物理变化物理变化与化学变化(化学反应)相对,指的是不涉及物质原子重组的变化。物理变化的过程中,原有的分子并未分解,也没有新的分子产生。只是分子间的距离改变了。如冰融化成液态水时,水
  • 吴隐之吴隐之(4世纪-413年),字处默,小字附子,濮阳鄄城(今山东鄄城北)人。曹魏侍中吴质的六世孙。东晋官员,以清俭而闻名,并曾在广州刺史任内一革当地风俗。卢循之乱时因不敌卢循军而被俘,后获
  • 今井武夫今井武夫(日语:いまい たけお、1898年2月23日 - 1982年6月12日)日本陆军军人,军衔为陆军少将。1945年8月21日下午4时,时任日军总参谋副长今井武夫和参谋桥岛芳雄和前川国雄(翻译木
  • 碳化铍二硒化碳 二硫化碳碳化铍(化学式:Be2C)是一种金属碳化物。与金刚石类似,它是一种硬度很大的化合物。 它的硬度与金刚砂相当,可以在高压下进行加工,制成耐磨材料。这是一种透明的晶