package com.example.portfolio3; // origin: <https://moodle.ruc.dk/course/section.php?id=211877> /// EdgeGraph - One big set of all edges in the graph class EdgeGraph extends AbstractGraph { /// foo EdgeGraph() {} /// foo Set<Edge> edges=new HashSet<>(); /// foo public void insertEdge(Vertex v1,Vertex v2,int w){ edges.add(new Edge(v1,v2,w)); } /// foo public Collection<Edge> edges(){return edges;} /// foo public Collection<Edge> outEdge(Vertex v){ ArrayList<Edge> outEdge=new ArrayList<>(); for(Edge e:edges)if(e.from()==v)outEdge.add(e); return outEdge; } /// foo public Integer getWeight(Vertex v1,Vertex v2){ // linear in number of edges in the graph for(Edge e:edges){ if(e.from()==v1 && e.to()==v2)return e.weight(); } return null; } }