计算机等级考试题,有答案但始终没想出解答思路,有大佬知道这道题是怎么解的吗?
在动物园里,饲养员要给 8 种不同的动物喂食,每种动物的喂食时间分别为 3 、9 、6 、5 、8 、2 、7 、6,
如果可以任意调整喂食的顺序, 那么这些动物等待食物的最短时间为 ?( )
A.46 B.121 C.167 D.206
答案:B
1
Jooooooooo 2020-12-21 23:27:53 +08:00 1
因为喂一个动物其他动物都得等着, 等待时间是 喂的时间 * 等的动物数量, 要这个值最小
注意到 喂完的动物就不用等了, 等于喂一只等的动物少一只. 那么当等的动物多的时候喂的时间少是最好的 那么喂的逻辑就是从小的开始喂, 先 2 那只, 其他 7 只都等着, 等待时间是 2*7 然后喂 3 那只, 剩下 6 只都等着, 等待时间是 3*6, 这么从小到大喂, 算完答案是 121 |
2
sheepxxman OP |
3
user8341 2020-12-22 00:02:40 +08:00 2
这题是操作系统调度策略:最短作业优先(shortest job first)。
|
4
xcstream 2020-12-22 00:05:28 +08:00
先喂快的
|
5
klesh 2020-12-22 00:10:39 +08:00 via Android
这考的应该是操作系统的任务调度,等待时间就是加起来的,定义如此。
这种不清不楚的包袱题很讨厌。 |
6
learningman 2020-12-22 00:48:05 +08:00
这不就是贪心吗,算法入门
|
7
ssssshi 2020-12-22 08:59:10 +08:00 1
最短作业优先( SJF )调度算法,2*7+3*6+5*5+6*4+6*3+7*2+8*1=121
|
8
Tink 2020-12-22 09:40:48 +08:00
楼上正解,SJF 算法
|
9
wsseo 2020-12-22 09:43:05 +08:00
这样有什么意义?不管怎么喂,喂食所需时间都是一样的。
|
13
6J73U552K5UVij4R 2020-12-22 10:47:39 +08:00 via iPhone 1
@wsseo 意义就是优点,比先来先服务算法改善平均周转时间和平均带权周转时间,缩短作业的等待时间;提高系统的吞吐量;
|
14
pandanrain123 2020-12-22 10:52:40 +08:00
短任务优先策略
|
15
lzyliangzheyu 2020-12-22 11:03:54 +08:00
电梯调度也是这么个策略吗
|
16
ssssshi 2020-12-22 11:21:37 +08:00
@lzyliangzheyu 现在肯定不是这个啦,如果电梯用这个的话,估计大部分时间都在人最多那几层来回转了,上不去下不来的,该产生饥饿现象了
|
17
learningman 2020-12-22 15:07:15 +08:00
@lzyliangzheyu 电梯不知道哪层人多
|
18
lzyliangzheyu 2020-12-22 17:40:03 +08:00
@learningman 哈哈哈哈哈
|