多数投票算法

✍ dations ◷ 2025-11-21 00:40:32 #算法

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

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

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

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

相关

  • 达格列净达格列净(英语:Dapagliflozin,中文品牌名:安达唐, 英文品牌名: Forxiga ), 由阿斯利康研发,是第一种获批的SGLT2抑制剂,欧盟在2011年首先批准了此药物。2014年FDA批准其在美国销售。
  • 雇佣军雇佣兵是一种为了利益而参加战争的战士,参战的目的只是为了金钱奖励,无任何政治与种族宗教等立场,只要出价够高可以受雇于任何人。雇佣兵的历史可以追溯到古希腊时代。当时,古希
  • 集沙群海葵毒素岩沙海葵毒素(英语:Palytoxin,又称沙群海葵毒素,或简称为海葵毒素)含有129个碳原子,64个手性中心。白色粉末,无固定熔点,加热至300℃炭化。是一类从沙群海葵科岩沙海葵中提取的水溶
  • 始华夏鸟始华夏鸟(学名Eocathayornis)是一类反鸟亚纲鸟类,比中国鸟更为原始。它们生存于白垩纪早期的中国。
  • 四氟化硫四氟化硫,化学式为SF4。在标准环境下为无色具腐蚀性以及剧毒气体,接触水或潮湿环境会造成危险。尽管如此,四氟化硫仍用于有机合成,是制作碳氟化合物的常用试剂。四氟化硫水解会
  • 玛丽亚·莎拉波娃玛丽亚·尤里耶芙娜·莎拉波娃(俄语:Мари́я Ю́рьевна Шара́пова)一年一度的运动员泳装图辑中。重大赛事表现方面,澳网和迪拜都败于贾斯汀·海宁,迈阿密则
  • 贺屋兴宣贺屋兴宣(1889年1月30日-1977年4月28日),日本政治家、大藏官僚。隶属自由民主党党籍,为该党之众议院议员。历任内阁中之大藏大臣、法务大臣等职务,亦是第4代日本遗族会会长。第一
  • 旁苏托尼旁苏托尼(Punxsutawney)是一个隶属于美国宾夕凡尼亚州杰佛逊县的城镇,位于匹兹堡东北方约135公里,人口约5,962人。该镇最著名的为土拨鼠日的活动。每年的2月2日土拨鼠日,都会由当
  • 圣托纳圣托纳(德语:Heilige Totnan,?年-689年) 是一位公元7世纪出生、在今德国境内弗兰肯传教的爱尔兰传教士,他和圣基利安、圣柯尔曼在弗兰肯共同进行基督教的传播。689年,他与和他共事
  • 维罗纳会议维罗纳会议(The Congress of Verona)是五国同盟于1822年10月20日在维罗纳召开的最后一次常规会议,是十九世纪初欧洲协调机制的组成部分。参与国共有俄罗斯、奥地利、普鲁士、法