基于相对优先级的作业调度算法

Algorithm for scheduling jobs based on relative priority

我有很多工作 (J1, J2, ...) 并且有优先级 (P1, P2, ...) 并且基于相对优先级。 我必须安排他们在 minimum number of steps.

相对优先级 5 jobs with 4 rules 的示例:

P(J1) > P(J3)

P(J2) > P(J3)

P(J3) > P(J4)

P(J2) > P(J5)

解决方案:P1, P2, P3, P4, P5P1, P2, P3, P5, P4

解决方案可能不止一种,但解决方案应符合以上4条规则。

您正在寻找 topological sorting algorithm。在这里你有一个有向图,其中顶点是工作并且有一条从 AB 的边当且仅当 P(A) > P(B).