波达计数法(Borda Count)是较为简单的排序投票法,每个选项借由选票上的排序来取得积分,积分最高者获胜。另一个类似的方法则是位置投票制。
投票人按喜好排列候选者。如果候选者在选票的排第一位,它就得某个分数;排第二位得一个较小的分数……如此类推。分数累计下来最高分的候选者便取胜。

名字的由来:

历史上有许多人曾提出使用波达计数法。它曾是罗马议会采用的投票制度之一。13世纪雷蒙·卢尔15世纪的库萨的尼可拉都曾提出这个制度,但在1770年让-查理斯·波达(Jean-Charles de Borda)提出用波达计数法来选举法国科学院(Académie des sciences)时被人以他的名字来命名此计数法。

例子:

假设有三个候选人甲、乙、丙的选举。结果如下:
  • 4张选票为:1.甲 2.乙 3.丙
  • 5张选票为:1.甲 2.丙 3.乙
  • 7张选票为:1.丙 2.乙 3.甲
若排第一位的候选人取得2分,第二位得1分,第三位无分,各人的分数如下:
  • 甲:4*2+5*2+7*0 = 18
  • 乙:4*1+5*0+7*1 = 11
  • 丙:4*0+5*1+7*2 = 19
即丙胜出。
瑙鲁议会选举以排第一位得1分,排第二得1/2=0.50分,排第三得1/3=0.33分来计算。如果按这个方法,刚才的选举结果要改写:
  • 甲:4*1.00+5*1.00+7*0.33 = 11.31
  • 乙:4*0.50+5*0.33+6*0.50 = 6.65
  • 丙:4*0.33+5*0.50+7*1 = 10.82
这回是甲胜了。

应用举例:

波达计数法不只考虑选民的第一选择,会同时考虑选民的其他选择及所有取向。换个说法,波达计数法的胜利者未必是最多人放在第一位的。
这种方法较不易选出偏激或极具争议性的人士。
例如:
#
51票
5票
23票
21票
1
张三
王五
李四
马六
2
王五
李四
王五
王五
3
李四
马六
马六
李四
4
马六
张三
张三
张三
采用排第n位得4-n分的准则,各人分数如下:
  • 张三: 153
  • 李四: 151
  • 王五: 205
  • 马六: 91
不论在多数制还是排序复选制,张三都是赢家。但在波达计数法之下,因为其他选民也将张三排在最尾,拖低了他的分数,结果张三败给王五。

Borda count的更多相关文章

  1. nodejs api 中文文档

    文档首页 英文版文档 本作品采用知识共享署名-非商业性使用 3.0 未本地化版本许可协议进行许可. Node.js v0.10.18 手册 & 文档 索引 | 在单一页面中浏览 | JSON格 ...

  2. C#中Length和Count的区别(个人观点)

    这篇文章将会很短...短到比你的JJ还短,当然开玩笑了.网上有说过Length和count的区别,都是很含糊的,我没有发现有 文章说得比较透彻的,所以,虽然这篇文章很短,我还是希望能留在首页,听听大家 ...

  3. [PHP源码阅读]count函数

    在PHP编程中,在遍历数组的时候经常需要先计算数组的长度作为循环结束的判断条件,而在PHP里面对数组的操作是很频繁的,因此count也算是一个常用函数,下面研究一下count函数的具体实现. 我在gi ...

  4. EntityFramework.Extended 实现 update count+=1

    在使用 EF 的时候,EntityFramework.Extended 的作用:使IQueryable<T>转换为update table set ...,这样使我们在修改实体对象的时候, ...

  5. 学习笔记 MYSQL报错注入(count()、rand()、group by)

    首先看下常见的攻击载荷,如下: select count(*),(floor(rand(0)*2))x from table group by x; 然后对于攻击载荷进行解释, floor(rand( ...

  6. count(*) 与count (字段名)的区别

    count(*) 查出来的是:结果集的总条数 count(字段名) 查出来的是: 结果集中'字段名'不为空的记录的总条数

  7. BZOJ 2588: Spoj 10628. Count on a tree [树上主席树]

    2588: Spoj 10628. Count on a tree Time Limit: 12 Sec  Memory Limit: 128 MBSubmit: 5217  Solved: 1233 ...

  8. [LeetCode] Count Numbers with Unique Digits 计算各位不相同的数字个数

    Given a non-negative integer n, count all numbers with unique digits, x, where 0 ≤ x < 10n. Examp ...

  9. [LeetCode] Count of Range Sum 区间和计数

    Given an integer array nums, return the number of range sums that lie in [lower, upper] inclusive.Ra ...

随机推荐

  1. css position relative obsolution

    层级关系为:<div ——————————— position:relative; 不是最近的祖先定位元素,不是参照物<div—————————-没有设置为定位元素,不是参照物<di ...

  2. 手写js代码(一)javascript数组循环遍历之forEach

    注:原文地址http://blog.csdn.net/oscar999/article/details/8671546 我这里是仿照学习! 1.js的数组循环遍历 ①数组的遍历首先想到的是for()循 ...

  3. Web工程师必备的43款可视化工具

    国外站点DATAVISUALIZATION.CH为大家总结出了当前热用的43款可视化工具,包括Arbor.Chroma.js.D3.js.Google Chart Tools等,绝对让你一饱眼福. 1 ...

  4. select下拉框

    <optgroup label="Alaskan/Hawaiian Time Zone"> <option value="AK">Ala ...

  5. webapp之路--百度手机前端经验(转)

    看了之后收获很大,分享一下: 本文将围绕我半年来在移动前端工程化做的一些工作做的总结,主要从localstorage缓存和版本号管理,模块化,静态资源渲染方式三个方面总结手机百度前端一年内沉淀的解决方 ...

  6. Struts2---OGNL表达式和EL表达式

    在action里放入actioncontext的变量值 ActionContext.getContext().put("forumList", forumList); 在jsp里如 ...

  7. hibernate--ID生成策略--XML

    xml生成id, a) generator b) 常用4个: native, uuid, identity, sequence 1. 新建java项目,  引入hibernate, junit(use ...

  8. Lumen 配置、重写、404错误等

    1.权限是否有设置为777: 2.app key是否有设置: 3.apache下是否有开启重写,a2enmod: 4.nginx下server的location是否配置正确,重写规则有没添加,rout ...

  9. 决策树ID3算法的java实现

    决策树的分类过程和人的决策过程比较相似,就是先挑“权重”最大的那个考虑,然后再往下细分.比如你去看医生,症状是流鼻涕,咳嗽等,那么医生就会根据你的流鼻涕这个权重最大的症状先认为你是感冒,接着再根据你咳 ...

  10. HDU 5651 xiaoxin juju needs help

    组合数杨辉三角打表,这样避免了除法求逆元. #include<cstdio> #include<cstring> #include<cmath> #include& ...