多数投票算法

✍ dations ◷ 2025-11-28 06:01:27 #算法

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

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

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

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

相关

  • 1992年阿尔贝维尔冬奥会第十六届冬季奥林匹克运动会(英语:the XVI Olympic Winter Games,法语:les XVIes Jeux olympiques d'hiver),于1992年2月8日至2月23日在法国的阿尔贝维尔举行,该届也是最后一次跟夏
  • 东京时间日本标准时间(日语:日本標準時;英语:Japan Standard Time;缩写:JST)是日本所采用的标准时间,比世界协调时快九小时(即UTC+9),与韩国标准时间、印尼东部时间(英语:Time in Indonesia)、雅库
  • 敌百虫敌百虫(英语:trichlorfon,也称为美曲磷酯,Metrifonate)是一种有机磷酸酯杀虫剂和乙酰胆碱酯酶抑制剂(英语:acetylcholinesterase inhibitor),是一种前体药物,可在非酶促情况下转化为敌
  • 江右江右可以指:
  • 安乐死 (美国)安乐死在美国大多数的州都属非法,目前7个州合法俄勒冈州、华盛顿州、蒙大拿州、佛蒙特州、加州、科罗拉多州、夏威夷州,得克萨斯州则在有限程度上合法。美国俄勒冈州1994年经
  • 弗朗索瓦·吕德弗朗索瓦·吕德(François Rude,1784年1月4日-1855年11月3日),法国雕塑家。吕德出生于法国中东部的第戎,年轻时和父亲一起为人修造炉灶,1809年从第戎的艺术学校毕业到巴黎深造,1812
  • 中国人民解放军第七步兵预备学校中国人民解放军第七步兵预备学校,是曾经存在的一所中国人民解放军院校。
  • 二次互反律在数论中,特别是在同余理论里,二次互反律(Law of Quadratic Reciprocity)是一个用于判别二次剩余,即二次同余方程 x 2
  • 哈利·阿特金森哈利·阿尔贝特·阿特金森(Harry Albert Atkinson)(1831年11月1日-1892年6月28日),新西兰政治家,19世纪80年代萧条时期任总理,实行经济上自力更生和紧缩政府开支的政策。1853年移居
  • 圣安东尼 (明尼苏达州)圣安东尼(英语:St. Anthony)是一个美国城市,位于美国明尼苏达州斯县。根据2010年的人口普查,当地人口为86人。根据美国人口普查局,该城市的总面积为0.49平方英里(1.27平方千米)。