Untitled

mail@pastecode.io avatar
unknown
java
a year ago
1.0 kB
1
Indexable
Never
       public static int getMeOuttaHere(int n, int m, int s, int t, Set<Edge> edges) {

            Edge[] edgeArray = new Edge[edges.size()];

            int j = 0;
            for(Edge currEdge : edges) {
                edgeArray[j] = currEdge;
                j++;
            }

            Arrays.sort(edgeArray);

            boolean[] visited = new boolean[edges.size()];
            for(int i = 0; i < visited.length; i++) visited[i] = false;
            visited[s] = true;
            
            int total = edgeArray[s].to + edgeArray[s].weight;

            for(int i = 0; i < edgeArray.length; i++) {

                int curr = edgeArray.hashCode();

                if(!visited[curr]) {
                    visited[curr] = true;
                    total += edgeArray[curr].to + edgeArray[curr].weight;
                }

                if(!visited[curr] && edgeArray[curr].to == t) {
                    return total;
                }
            }

            return -1;
        }