diff options
Diffstat (limited to 'Week6/src/Solver.java')
-rw-r--r-- | Week6/src/Solver.java | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/Week6/src/Solver.java b/Week6/src/Solver.java new file mode 100644 index 0000000..137646c --- /dev/null +++ b/Week6/src/Solver.java @@ -0,0 +1,37 @@ +import java.util.Queue;
+
+
+/**
+ * A class that implements a breadth-first search algorithm
+ * for finding the Configurations for which the isSolution predicate holds
+ * @author Pieter Koopman, Sjaak Smetsers
+ * @version 1.3
+ * @date 28-02-2013
+ */
+public class Solver
+{
+ // A queue for maintaining graphs that are not visited yet.
+ Queue<Configuration> toExamine;
+
+ public Solver(Configuration g) {
+ throw new UnsupportedOperationException("Solver: not supported yet.");
+ }
+
+ /* A skeleton implementation of the solver
+ * @return a string representation of the solution
+ */
+ public String solve () {
+ while (! toExamine.isEmpty() ) {
+ Configuration next = toExamine.remove();
+ if ( next.isSolution() ) {
+ return "Success!";
+ } else {
+ for ( Configuration succ: next.successors() ) {
+ toExamine.add (succ);
+ }
+ }
+ }
+ return "Failure!";
+ }
+
+}
|