// CSE 373, Winter 2013, Marty Stepp // This client program demonstrates the use of the Graph ADT interface // and provided SearchableGraph class. // We will examine a graph of CSE courses at UW where each vertex // is a course and each edge A -> B means that course A is a required // prerequisite for course B. // (The data in this program is not 100% accurate relative to actual courses.) import java.io.*; import java.util.*; public class CseCourses { public static void main(String[] args) throws FileNotFoundException { Graph courses = new SearchableGraph(true, false); courses.addVertex("CSE 140"); courses.addVertex("CSE 142"); courses.addVertex("CSE 142"); courses.addVertex("CSE 143"); courses.addVertex("CSE 154"); courses.addVertex("CSE 311"); courses.addVertex("CSE 312"); courses.addVertex("CSE 331"); courses.addVertex("CSE 332"); courses.addVertex("CSE 333"); courses.addVertex("CSE 341"); courses.addVertex("CSE 344"); courses.addVertex("CSE 351"); courses.addVertex("CSE 352"); courses.addVertex("CSE 373"); courses.addVertex("CSE 374"); courses.addVertex("CSE 403"); courses.addVertex("CSE 410"); courses.addVertex("CSE 413"); courses.addVertex("CSE 414"); courses.addVertex("CSE 415"); courses.addVertex("CSE 417"); courses.addEdge("CSE 140", "CSE 143"); courses.addEdge("CSE 140", "CSE 154"); courses.addEdge("CSE 142", "CSE 143"); courses.addEdge("CSE 142", "CSE 154"); courses.addEdge("CSE 143", "CSE 311"); courses.addEdge("CSE 143", "CSE 331"); courses.addEdge("CSE 143", "CSE 332"); courses.addEdge("CSE 143", "CSE 341"); courses.addEdge("CSE 143", "CSE 351"); courses.addEdge("CSE 143", "CSE 374"); courses.addEdge("CSE 311", "CSE 312"); courses.addEdge("CSE 311", "CSE 332"); courses.addEdge("CSE 311", "CSE 344"); courses.addEdge("CSE 331", "CSE 403"); courses.addEdge("CSE 351", "CSE 333"); courses.addEdge("CSE 351", "CSE 352"); courses.addEdge("CSE 373", "CSE 410"); courses.addEdge("CSE 373", "CSE 413"); courses.addEdge("CSE 373", "CSE 414"); courses.addEdge("CSE 373", "CSE 415"); courses.addEdge("CSE 373", "CSE 417"); System.out.println(courses.toStringDetailed()); } }