首页 > 解决方案 > Java中PERT图表的算法

问题描述

问候,

作为学校项目的一部分,我必须创建一个程序来可视化 PERT 图。除了我认为我可以管理的前端方面,我在后端也遇到了一些困难。

注意:这是一个解释PERT图的链接,我没有找到一个英文链接,它使用与我们所教的相同的图形表示,即使翻译不好也应该可以理解)-->这里

我不知道如何表示图表以及它是由什么组成的(任务和里程碑)。我已经实现了这样的Task类:

public class Task {
    
    private char identifier;
    private int duration;
    private Set<Character> antecedents;
    private Set<Character> successors;
    
    // Getters and setters...
    
}

注意:我知道使用字符作为唯一标识符是不一致的,但这就是所要求的。

这些任务将由一个类管理,我还不知道是哪一个(可能是一个Chart包含 Task 和 Milestone 集合的类)。回到里程碑,我正在考虑用自己的对象对它们进行建模,如下所示:

public class Milestone {
    
    private int earliestDate;
    private int latestDate;
    private Set<Character> precedingTasks; // Maybe?
    private Set<Character> succeedingTasks; // Maybe?
    
}

现在我必须考虑实现这一切的最佳方式,上面的仍然是一个草图。要渲染图表,我必须弄清楚元素的放置位置,这就是我开始卡住的地方。

我目前提出的假设是创建一个Path类,该类将包含在一个列表中,因此排序后,构成路径的任务。

我想知道您的意见,甚至您对实施的帮助(如果我的想法仍然可行,如何创建这些路径?)。另外,如果我知道图表中任务的级别(我设法做到了),结合路径,是否足以以图形方式呈现该图表?

标签: javaalgorithmgraph

解决方案


推荐阅读