用Java实现冲突图
我试图创建一个程序来决定一组课程是否有冲突时间,并从那些没有冲突时间的课程中创建最大的课程子集。我的想法是创建一个图,其中节点是路线,连接节点的边是冲突。然后我会给每个节点上色,没有两个相邻的节点具有相同的颜色。然后我会选择颜色最频繁的课程子集。我知道在Java中有许多不同的表示图形的方法,但是,我以前从未创建过一种,我想知道在我的例子中使用什么方法会更好。还是有更有效的方法来解决这个问题?用Java实现冲突图,java,graph,nodes,conflict,Java,Graph,Nodes,Conflict,我试图创建一个程序来决定一组课程是否有冲突时间,并从那些没有冲突时间的课程中创建最大的课程子集。我的想法是创建一个图,其中节点是路线,连接节点的边是冲突。然后我会给每个节点上色,没有两个相邻的节点具有相同的颜色。然后我会选择颜色最频繁的课程子集。我知道在Java中有许多不同的表示图形的方法,但是,我以前从未创建过一种,我想知道在我的例子中使用什么方法会更好。还是有更有效的方法来解决这个问题?课堂课程{ class Course { double startTime, endTime; /
课堂课程{
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;
}
}
双开始时间,结束时间;//24小时时间
字符串颜色;
链接列表冲突过程;
布尔冲突与(课程其他课程){
if(this.startTime>otherCourse.endTime | | otherCourse.startTime>this.endTime)
返回false;
返回true;
}
}
浏览所有成对的课程,看看哪一对在冲突中返回true。然后给它们上色