Class Sudoku

java.lang.Object
io.github.skenvy.Sudoku

public class Sudoku extends Object
  • Field Details

    • 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 Details

  • Method Details

    • 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)