Package io.github.skenvy
Class Sudoku
- java.lang.Object
-
- io.github.skenvy.Sudoku
-
public class Sudoku extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
Sudoku.InvlalidSudokuCongiguration
Used for sudoku related exceptions.
-
Field Summary
Fields Modifier and Type Field Description int[][][][]
board
The known and determined values that populate the grid.boolean[][][][]
cellFilled
Whether a cell is filled or not.boolean[][][][]
errorInSquare
-
Method Summary
-
-
-
Field Detail
-
board
public int[][][][] board
The known and determined values that populate the grid. Is initialised with the already known cell values, and is then populated with those determined through solving.
-
cellFilled
public boolean[][][][] cellFilled
Whether a cell is filled or not.
-
errorInSquare
public boolean[][][][] errorInSquare
-
-
Constructor Detail
-
Sudoku
public Sudoku()
-
Sudoku
public Sudoku(int size)
-
Sudoku
public Sudoku(int[][][][] boardIn) throws Sudoku.InvlalidSudokuCongiguration
-
-
Method Detail
-
main
public static void main(String[] args)
-
readBoardIn
public void readBoardIn(String[] boardRows)
-
printBoardOut
public void printBoardOut()
-
initialiseBoard
public boolean initialiseBoard()
-
initialisePlaceFilled
public void initialisePlaceFilled()
-
initialisePlaceCanContain
public void initialisePlaceCanContain(boolean clear)
-
updatePlaceCanContain
public void updatePlaceCanContain()
-
initialiseNumberPresentGridRowCol
public void initialiseNumberPresentGridRowCol(boolean clear)
-
updateNumberPresentGridRowCol
public void updateNumberPresentGridRowCol()
-
boardCheckValid
public boolean boardCheckValid()
-
boardCheckErrors
public void boardCheckErrors()
-
errorExists
public boolean errorExists()
-
boardCheckComplete
public boolean boardCheckComplete()
-
boardCheckPlacesFilled
public int boardCheckPlacesFilled()
-
printDigest
public void printDigest()
-
digestAsArray
public String[] digestAsArray()
-
printOperations
public void printOperations()
-
operationsAsArray
public String[] operationsAsArray()
-
textFieldAdd
public void textFieldAdd(String a)
-
solveBoard
public void solveBoard()
-
solveBoardEasy
public boolean solveBoardEasy()
-
solveBoardModerate
public boolean solveBoardModerate()
-
solveBoardHard
public boolean solveBoardHard()
-
iterateSoleCandidate
public int iterateSoleCandidate()
-
checkSoleCandidate
public boolean checkSoleCandidate()
-
iterateUniqueCandidate
public int iterateUniqueCandidate()
-
checkUniqueCandidate
public boolean checkUniqueCandidate()
-
iterateReductionOfCanContainInRowColByGrid
public int iterateReductionOfCanContainInRowColByGrid()
-
reductionOfCanContainInRowColByGrid
public boolean reductionOfCanContainInRowColByGrid()
-
iterateReductionOfCanContainInGridByRowCol
public int iterateReductionOfCanContainInGridByRowCol()
-
reductionOfCanContainInGridByRowCol
public boolean reductionOfCanContainInGridByRowCol()
-
iterateReductionOfCanContainSubsetVisible
public int iterateReductionOfCanContainSubsetVisible()
-
reductionOfCanContainSubsetVisible
public boolean reductionOfCanContainSubsetVisible()
-
iterateReductionOfCanContainSubsetHidden
public int iterateReductionOfCanContainSubsetHidden()
-
reductionOfCanContainSubsetHidden
public boolean reductionOfCanContainSubsetHidden()
-
deliminatePotential
public void deliminatePotential(int k0, int k1, int k2, int k3, int k4)
-
subsetCollisionAt
public int[] subsetCollisionAt(int subsetSize, int numberOfTrueSubsets, int[] subsetFoundAt, int[][][] subsets)
-
subsetCollisionAtRolling
public void subsetCollisionAtRolling(int subsetSize, int numberOfTrueSubsets, int[] subsetFoundAt, int[][][] subsets)
-
placeCanContainCheckDoesCollide
public boolean placeCanContainCheckDoesCollide(int j0, int j1, int j2, int j3, int k0, int k1, int k2, int k3, int collisions)
-
placeCanContainCheckCollision
public boolean[] placeCanContainCheckCollision(int j0, int j1, int j2, int j3, int k0, int k1, int k2, int k3)
-
-