实现冲突图Java

时间:2014-04-11 20:19:42

标签: java graph nodes conflict

我正在尝试创建一个程序来决定一组课程是否存在冲突时间,而不是那些课程则创建最大的课程子集。我的想法是创建一个图表,其中节点是连接节点冲突的路线和边缘。然后,我将为每个节点着色,没有两个相邻的节点具有相同的颜色。然后我会选择课程的子集作为颜色最频繁的课程。我知道有很多不同的方法来表示Java中的图形,但是,我之前从未创建过一个,并且我想知道在我的情况下使用哪种方法会很好。或者是否有更有效的方法解决这个问题?

1 个答案:

答案 0 :(得分:0)

class Course {
    double startTime, endTime; //24-hour times
    String color;
    LinkedList<Course> conflictingCourses;

    boolean conflictsWith(Course otherCourse) {
        if (this.startTime > otherCourse.endTime || otherCourse.startTime > this.endTime)
            return false;
        return true;
    }
}

浏览所有对的课程,看看哪些对返回true for conflictWith。然后为它们着色。