多数投票算法

✍ dations ◷ 2025-11-20 11:15:48 #算法

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

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

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

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

相关

  • 科隆大学科隆大学(德语:Universität zu Köln,英语:University of Cologne)是一所位于德国科隆的研究型公立大学。大学于1388年由教宗签字同意并建立,是现今德国第二古老的大学。科隆大学
  • 荷叶效应莲花效应(lotus effect),也称作荷叶效应,是指莲叶表面具有超疏水性以及自洁(self-cleaning)的特性。在东方文化里,莲花是纯净的象征。虽然,莲花喜欢生长在泥泞的湿地,但其叶子和花仍
  • 石墨峰坐标:85°3′S 172°45′E / 85.050°S 172.750°E / -85.050; 172.750石墨峰是南极洲的山峰,位于杜费克海岸,处于克拉克山东北面6公里,海拔高度3,260米,由新西兰探险队命名,现时
  • NASCAR全国运动汽车竞赛协会(National Association for Stock Car Auto Racing,缩写:NASCAR,中文名称为纳斯卡赛车)是在美国最大、最受认可的赛车竞速团体。由NASCAR认可三个最大的竞速
  • 三穗县三穗县是中华人民共和国贵州省黔东南汉苗族侗族自治州东北部的一个县。面积1036平方公里,2002年人口20万。邮政编码556500,县政府驻八弓镇。与其接壤的有天柱县、剑河县、镇远
  • 极乐鸟13个,详见下方列表极乐鸟(bird-of-paradise)是雀形目极乐鸟科(Paradisaeidae)的鸟类,又名天堂鸟、风鸟。它们分布在印度尼西亚东部,托列斯海峡群岛,巴布亚新几内亚及澳大利亚东部。
  • 大彼尔姆公国彼尔姆公国(俄语:Великое Пермь Великая)是一个由科米部落联合而成的中世纪封建政权。通称为“大彼尔姆”,这个词可能来自于定居在拉多加湖和苏霍纳河的维京
  • dBZdBZ是一个与特定参数Z值来描述雷达反射率之比例的单位,与分贝类似,为对数无量纲量,主要用于描述雷达回波的强度,尤其是气象雷达用于度量大气中特定区域的降水粒子(雨、雪、冰雹等
  • 尼古拉·列维切夫尼古拉·弗拉基米罗维奇·列维切夫(俄语:Николай Владимирович Левичев,1953年5月28日-)是一名俄罗斯政治人物。2011年4月16日,他在莫斯科举行的第五次
  • 龙虾 (电影)《龙虾》(英语:)是2015年的欧洲科幻反乌托邦黑色幽默爱情片。由希腊导演欧格斯·兰斯莫斯执导,爱尔兰、英国、希腊、法国与荷兰跨国制作,本片获选为第68届戛纳电影节正式竞赛片,最