Class Sudoku


  • public class Sudoku
    extends Object
    • 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
    • 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)