鱼C论坛

 找回密码
 立即注册
查看: 1432|回复: 3

[已解决]关于Majority Vote的函数问题

[复制链接]
发表于 2021-7-19 12:17:08 | 显示全部楼层 |阅读模式
10鱼币
创建一个函数 many(votes),它返回列表中的多数票。 Majority Vote是在列表中出现 >𝑛/2 次的元素(其中 𝑛 是列表的长度)。 如果没有多数票,该函数应返回 None。

函数测试:
assert majority(["A", "A", "B"]) == "A"
assert majority(["pizza", "pizza", "pizza", "burger", "burrito", "pizza"]) == "pizza"
assert majority(["koala", "kangaroo", "kangaroo", "koala", "wombat", "wombat"]) == None
assert majority(["dogs", "cats", "dogs", "snakes"]) == None

好兄弟请问下这个函数怎么写?
最佳答案
2021-7-19 12:17:09
  1. def many(votes) :
  2.     tmp=set(votes)  
  3.     flag=None
  4.     for x in tmp:
  5.         if votes.count(x)/len(votes)>0.5:
  6.             flag=x
  7.             break
  8.     return flag

  9. print(many(["A", "A", "B"]))
  10. print(many(["pizza", "pizza", "pizza", "burger", "burrito", "pizza"]))
  11. print(many(["koala", "kangaroo", "kangaroo", "koala", "wombat", "wombat"]))
  12. print(many(["dogs", "cats", "dogs", "snakes"]))
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-19 12:17:09 | 显示全部楼层    本楼为最佳答案   
  1. def many(votes) :
  2.     tmp=set(votes)  
  3.     flag=None
  4.     for x in tmp:
  5.         if votes.count(x)/len(votes)>0.5:
  6.             flag=x
  7.             break
  8.     return flag

  9. print(many(["A", "A", "B"]))
  10. print(many(["pizza", "pizza", "pizza", "burger", "burrito", "pizza"]))
  11. print(many(["koala", "kangaroo", "kangaroo", "koala", "wombat", "wombat"]))
  12. print(many(["dogs", "cats", "dogs", "snakes"]))
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-7-19 12:18:31 | 显示全部楼层
再发一下,题目貌似有点不清晰,创建一个函数 many(votes),它返回列表中的多数票。 Majority Vote是在列表中出现 >n/2 次的元素(其中 n 是列表的长度)。 如果没有多数票,该函数应返回 None。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-7-20 12:07:02 | 显示全部楼层

采纳晚了,谢谢老哥
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-15 04:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表