多机调度问题——贪心算法(最短时间)python代码实现
时间: 2023-06-07 20:10:16 浏览: 446
多机调度问题的贪心算法实现
以下是多机调度问题的贪心算法Python代码实现:
```python
def schedule(tasks, m):
machines = [0]*m # 初始化m台机器的任务时间为0
for task in sorted(tasks, reverse=True):
machines[machines.index(min(machines))] += task
return max(machines)
tasks = [3, 5, 7, 1, 4, 8, 2, 6]
m = 3
print(schedule(tasks, m))
```
其中,`tasks`是任务列表,`m`是机器数量,函数`schedule`会返回所有机器中最大的任务时间。算法的思想是每次将任务分配给当前任务时间最短的机器,从而使得所有机器完成所有任务的时间最短。
阅读全文