多数投票算法

✍ dations ◷ 2025-11-19 07:41:30 #算法

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

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

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

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

相关

  • 喹诺酮喹诺酮(英语:quinolone)是一类人工合成的含4-喹诺酮基本结构,对细菌DNA螺旋酶具有选择性抑制的抗菌剂。1962年最早的喹诺酮类药物萘啶酸首先用于临床,由于其抗菌谱窄、口服吸收差
  • 密歇根密歇根州(英语:State of Michigan),是美国的一个州,位于五大湖地区,东面与加拿大首府渥太华的所在地安大略省接壤。其邮政缩写是MI。首府为兰辛,最大城市为底特律。密歇根州传统上
  • 茜蒙·仙诺茜蒙·仙诺(法语:Simone Signoret,1921年3月25日-1985年9月30日),犹太人,法国电影女演员,法国第一位奥斯卡金像奖得主。
  • 英国第五台英国第五台(Channel Five)是英国在1997年开始播出的一家商业电视台。1990年,随着英国修改广播法,民间可以设立新的无线电视台,英国第五台随之诞生。英国第五台是独立电视台之后英
  • 德布罗意假说在物理学里,物质波(即德布罗意波)系指物质具有波动性的现象。由于物质具有粒子性与波动性,物质具有波粒二象性。路易·德布罗意于1923年在博士论文《量子理论研究》里提出,粒子波
  • 清太宗后金第2位大汗清朝第1位皇帝皇太极(满语:ᡥᠣᠩ ᡨᠠᡳᠵᡳ,转写:Hong Taiji,1592年11月28日-1643年9月21日),爱新觉罗氏,是后金的第二位大汗(1626年10月20日-1636年5月15日在位)和清朝
  • 无丝黏菌目无丝黏菌目(Liceida或Liceales)为黏菌的一目。无丝黏菌目下有3个科:
  • FN P90冲锋枪2.54 kg(5.58lb)空枪 2.68 kg(5.9lb)连空弹匣 P90是于1990年由比利时的军火商Fabrique Nationale所推出,属于个人防卫武器类别的一种枪械。P90是全名“FN Project 1990”的简写,意
  • 林灿林灿(1943年5月-),广西上思人,中华人民共和国政治人物。毕业于广西农学院植保系植保专业。1984年,任广西隆安县委副书记、县长。1990年,任广西南宁地委委员、行署常务副专员。1993
  • 何塞·马蒂何塞·胡利安·马蒂·佩雷兹(西班牙语:José Julián Martí Pérez,1853年1月28日-1895年5月19日),古巴民族英雄、独立战争领袖、诗人。1868年开始参加民族解放运动,先后创办了《