Fri, 01 Feb 2013 10:18:47 +0100
removed completeness test - the solver automatically returns false when the field is incomplete
src/de/uapcore/sudoku/Solver.java | file | annotate | diff | comparison | revisions |
1.1 --- a/src/de/uapcore/sudoku/Solver.java Thu Jan 31 18:44:44 2013 +0100 1.2 +++ b/src/de/uapcore/sudoku/Solver.java Fri Feb 01 10:18:47 2013 +0100 1.3 @@ -173,7 +173,7 @@ 1.4 } 1.5 1.6 // Backtrack 1.7 - return solve(f, candidates) && complete(f); 1.8 + return solve(f, candidates); 1.9 } 1.10 1.11 public boolean check(Field f) { 1.12 @@ -202,45 +202,6 @@ 1.13 return true; 1.14 } 1.15 1.16 - private boolean complete(Field f) { 1.17 - for (int i = 0 ; i < 9 ; i++) { 1.18 - if (!complete(f.getRow(i))) { 1.19 - return false; 1.20 - } 1.21 - if (!complete(f.getColumn(i))) { 1.22 - return false; 1.23 - } 1.24 - } 1.25 - for (int x = 0 ; x < 3 ; x++) { 1.26 - for (int y = 0 ; y < 3 ; y++) { 1.27 - if (!complete(f.getSquare(x, y))) { 1.28 - return false; 1.29 - } 1.30 - } 1.31 - } 1.32 - return true; 1.33 - } 1.34 - 1.35 - private boolean complete(int[][] square) { 1.36 - for (int x = 0 ; x < 3 ; x++) { 1.37 - for (int y = 0 ; y < 3 ; y++) { 1.38 - if (square[x][y] == 0) { 1.39 - return false; 1.40 - } 1.41 - } 1.42 - } 1.43 - return true; 1.44 - } 1.45 - 1.46 - private boolean complete(int[] line) { 1.47 - for (int i = 0 ; i < 9 ; i++) { 1.48 - if (line[i] == 0) { 1.49 - return false; 1.50 - } 1.51 - } 1.52 - return true; 1.53 - } 1.54 - 1.55 private boolean valid(int[] line) { 1.56 int numbers[]; 1.57 numbers = new int[9];