问题描述:
有 n 个任务
,其中一些任务可能依赖于其他任务,也就是如果 A 依赖于 B,则必须在 B 完成后才能完成 A。
1. 找出一种尽快完成这些任务的方法?
2. 如果考虑并行处理,如何设计程序来完成这些任务?
问题:
显然,回答第一个问题的方法是,对这些任务进行拓扑排序,然后按照那个顺序完成它们。
但是,在考虑并行处理的情况下,该如何处理?
我的答案是,首先对这些任务进行拓扑排序,然后选取那些不依赖于其他任务的任务,先完成它们,然后在剩余的任务中选取和完成那些不依赖于其他任务的任务...
我正确吗?