多数投票算法

✍ dations ◷ 2025-11-22 08:07:06 #算法

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

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

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

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

相关

  • 广群芳谱《广群芳谱》,清康熙四十七年命内阁学士汪灏等撰成,凡100卷。《广群芳谱》由明人王象晋《群芳谱》增删而成,《广群芳谱》分天时谱、榖谱、桑麻谱、蔬谱、茶谱、竹谱、花谱、果
  • 三分虫属Eutrimerocephalus三跗节虫(学名:Trimerocephalus),又名三分虫,是生存于泥盆纪法门期(英语:Famennian)的一属三叶虫,生活在深海的底层。它们没有眼睛,也没有颊部棘刺,宽阔的侧板有往下
  • 54新观点《54新观点》(英语:54 Viewpoint)曾是台湾三立新闻台的脱口秀,2019年节目播出最后一集后由《郑知道了》接续播出。
  • 乔晓光乔晓光可以指:
  • 辽宁沿海诸河辽宁河流列表,列举全部或部分在辽宁省境内的河流,并依照流域排列;支流则由河口至源头排序。辽宁省境内有大小河流390多条,总长约16万公里。较大河流有辽河、浑河、大凌河、太子
  • 判官统治判官统治(希伯来语:.mw-parser-output .script-hebrew,.mw-parser-output .script-Hebr{font-size:1.15em;font-family:"Ezra SIL","Ezra SIL SR","Keter Aram Tsova","Taamey
  • 自由指数列表现时有数个非政府组织根据自己的定义,发布对世界各地自由情况的评估,并会根据政治权利、经济权利和公民自由等标准对地区进行排名。下面列出根据各指数编制的地图和级别列表。
  • 核宇宙编年学核宇宙编年学,也称为宇宙编年学,是相对来说使用较新的技术用来确定天文物理物件和事件的时间尺度。这种技术使用重放射性核种的丰度计算天文物件形成的年龄,类似于地质年代学领
  • 台北市立怀生国民中学台北市立怀生国民中学(Taipei Municipal HuaiSheng Junior High School缩写:HSJH),简称怀生国中,位于台北市大安区的一所国民中学,地处忠孝东路,邻近台北捷运忠孝复兴站、怀生国小
  • 烤漆烤漆是在家具、车辆等制造中的一种喷漆制作方法(工艺)。其方法是:在打磨到一定粗糙程度的基底上(通常是高密度板材),喷上若干层油漆。并经高温烘烤定型。 该工艺对油漆要求较高,显