多数投票算法

✍ dations ◷ 2025-02-24 02:13:15 #算法

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

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

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

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

相关

  • 犬属侧纹胡狼(条纹豺)C. adustus 亚洲胡狼(金豺) C. aureus 恐狼 C. dirus(† 已灭绝) 家犬 C. familiaris(也属于狼的亚种)(C. lupus familiaris) 郊狼 C. latrans 狼 C. lupus 注1 东
  • 汉斯·德默尔特汉斯·格奥尔格·德默尔特(德语:Hans Georg Dehmelt,1922年9月2日-2017年3月7日),德国-美国物理学家,1989年获诺贝尔物理学奖。汉斯·德默尔特出生于德国格尔利茨,在柏林长大的。194
  • 发夹环茎环(英语:Stem-loop,或译主干-循环)指一种分子内碱基配对方式,与因此形成的结构,可发生于单股DNA,但在RNA分子中较为常见。当形成的循环较小时,也称为发夹(hairpin)或发夹环。此种结
  • 囊肿纤维症囊肿性纤维化(英语:cystic fibrosis,缩写作 CF),亦称为囊性纤维化、囊肿性纤维变性、囊肿纤维症、纤维性囊肿或囊纤维变性,是一种常见的遗传疾病,此病症最常影响肺脏,但也常发生于胰
  • 主量子数在原子物理学中,主量子数(英语:principal quantum number)是表示原子轨域的量子数的其中一种(其他还包括角量子数、磁量子数和自旋量子数),用小写拉丁字母
  • 汝州市汝州市,原称临汝、梁县,是中国河南省平顶山市下辖的一个县级市,位于河南省中西部,属平顶山市西北的县级市。辖境南与宝丰、鲁山县接壤,西临汝阳县,北与伊川县与登封市毗邻,东连禹州
  • 黄海南道黄海南道(朝鲜语:황해남도/黃海南道 Hwanghaenam do */?),是朝鲜西南部的地方行政区。人口218万人。 道政府所在海州市。管辖1市19郡418里25洞10劳动地区。西面黄海(朝鲜称为西
  • 坤甸坤甸市(印尼语:Kota Pontianak)简称“坤甸”(Pontianak 或 Khuntien),是印度尼西亚西加里曼丹省的首府,临近赤道,地处曼帕瓦县(印尼语:Kabupaten Mempawah)境内。该市被卡普阿斯河分隔
  • 中国人民解放军第七步兵预备学校中国人民解放军第七步兵预备学校,是曾经存在的一所中国人民解放军院校。
  • 缅因州州旗缅因州州旗为蓝底,中心为缅因州州徽。在州徽上有一个在松树下休息的麋鹿,松树象征新英格兰。左右为一个农民和一个海员,代表州的主要产业。最上方的北极星代表州格言“我领导”