Skip to content

Commit 6012d58

Browse files
committed
change from hashmap to arraylist<Edges>
1 parent cd8c8dd commit 6012d58

File tree

2 files changed

+9
-10
lines changed

2 files changed

+9
-10
lines changed

src/GraphDraw.java

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ public class GraphDraw {
2525
static BasicVisualizationServer<Integer,Edge> vs;
2626
LinkedHashMap<Edge, String> VecEdges = new LinkedHashMap<>();
2727
Vector<Integer> VisitedVect = new Vector<>();
28-
LinkedHashMap<Edge,Integer> ResultGraph = new LinkedHashMap<>();
28+
ArrayList<Edge> ResultGraph = new ArrayList<>();
2929
int Vertices, Edges, CurrVert=99999, PrevVert;
3030
static int Counter = 0;
3131
JFrame frame;
@@ -137,34 +137,32 @@ void Next() {
137137
boolean flag = false;
138138
int CurrEdgeW = 0;
139139
for(Edge y: VecEdges.keySet()){
140-
for(Edge k : ResultGraph.keySet()) {
140+
for(Edge k : ResultGraph) {
141141
if (y.source == k.source && y.dest == k.dest) {
142142
//System.out.println( k.source + " --- " + ResultGraph.get(k));
143143
CurrentEdg = k;
144144
CurrEdgeW = y.capacity;
145145
PrevVert = CurrentEdg.source;
146146
CurrVert = CurrentEdg.dest;
147-
EdgeValues(CurrentEdg, ResultGraph.get(k), CurrEdgeW);
147+
EdgeValues(CurrentEdg, k.capacity, CurrEdgeW);
148148
changeVertColour();
149149
flag = true;
150150
break;
151151
}
152152
if(flag) break;
153153
}
154154
}
155-
// System.out.println(CurrentEdg);
156155
ResultGraph.remove(CurrentEdg);
157156
}
158157

159158
//gets a hashmap for the changed edge and the changed value
160-
void getAnswer(LinkedHashMap<Edge,Integer> Answer){
159+
void getAnswer(ArrayList<Edge> Answer){
161160
if (Answer == null) {
162161
JOptionPane.showMessageDialog(frame, "There is no path from source to destination",
163162
"Error", JOptionPane.WARNING_MESSAGE);
164163
} else {
165-
for (Edge i : Answer.keySet()) {
166-
ResultGraph.put(i,Answer.get(i));
167-
System.out.println( i.source + " --- " + Answer.get(i));
164+
for (Edge i : Answer) {
165+
ResultGraph.add(i);
168166
}
169167
buttonNext.setEnabled(true);
170168
}

src/MaxFlowGUI.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import javax.swing.table.DefaultTableModel;
33
import java.awt.event.ActionEvent;
44
import java.awt.event.ActionListener;
5+
import java.util.ArrayList;
56
import java.util.HashMap;
67
import java.util.LinkedHashMap;
78

@@ -156,9 +157,9 @@ void getTableData() {
156157

157158
graphDraw = new GraphDraw(nVert,nEdg,graph.edges);
158159
Result = utils.fordFulkerson(graph, sVertex, eVertex);
159-
LinkedHashMap<Edge, Integer> changes = new LinkedHashMap<>();
160+
ArrayList<Edge> changes = new ArrayList<>();
160161
for(Edge g: graph.edges) {
161-
changes.put(g, g.capacity);
162+
changes.add(g);
162163
}
163164
graphDraw.getAnswer(changes);
164165
textFieldResult.setText(Integer.toString(Result));

0 commit comments

Comments
 (0)