码迷,mamicode.com
首页 > 其他好文 > 详细

hire-assistant

时间:2018-06-11 22:14:58      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:ecb   分享图片   bsp   info   .com   png   最大化   sts   ret   

一.

技术分享图片

技术分享图片

技术分享图片
 1 #根据给定的应聘者列表,得出最好的应聘者
 2 def hire_assistant(assList):
 3     n = len(assList)
 4     best = 0
 5     index = 0
 6     for i in range(n):
 7         value = assList[i].score
 8         if value > best:
 9             best = value
10             index = i
11     return assList[index]
12 
13 # 定义一个应聘者的类,给出他的属性score和name
14 class Assistant:
15     def __init__(self, a_name="anonymous", value=0):
16         self.name = a_name
17         self.score = value
18 
19 assList=[Assistant("A",12),Assistant("B",13),Assistant("C",8),Assistant("D",10),Assistant("E",22),Assistant("F",21)]
20 print(hire_assistant(assList).name)
21 -------------------------------------------------
22 E
雇佣问题

二.

 技术分享图片

技术分享图片

技术分享图片
 1 #平衡最小化面试次数和最大化应聘者质量
 2 def on_line_maximum(k,assList):
 3     n = len(assList)
 4     bestscore = float("-inf")#最好的分数
 5     #先搜寻前k个中分数最高的
 6     for i in range(k):
 7         if assList[i].score > bestscore:
 8             bestscore = assList[i].score
 9     #对于后面的,如果有更高分数的,立即选择,否则选择最后一个
10     for i in range(k,n):
11         if assList[i].score > bestscore:
12             return assList[i]
13     return assList[n-1]
14 
15 assList=[Assistant("A",12),Assistant("B",13),Assistant("C",8),Assistant("D",10),Assistant("E",22),Assistant("F",21)]
16 assistant = on_line_maximum(3, assList)
17 print(assistant.name)
18 ----------------------------------
19 E
hire-assistant

 

hire-assistant

标签:ecb   分享图片   bsp   info   .com   png   最大化   sts   ret   

原文地址:https://www.cnblogs.com/yu-liang/p/9169063.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!