← 返回编程题库

需要面试准备

把一个带 调用方显式指定 priority 的 DAG 任务调度到 K 个独立 worker slot 上。请实现 solution(tasks: list[dict], n_workers: int) -> dict,模拟 priority 驱动的 list-scheduling:每个调度时刻找出依赖都完成的 task(*ready set*),按 (-priority, task_id) 排序——priority 高的先(lex 作为 tie-break)——依次分配给最低 index 的空闲 worker,跑 duration ticks 后释放。返回 per-worker timeline(每个 worker 一个 {task_id, start_time, end_time} 列表,按 start_time 升序)以及 total_makespan(所有 worker 中最晚的 end_time)。

查看订阅方案