Sudoku Solving Tips

It's clear to most sudoku solvers that to get good at solving sudoku you are going to need to familiarize yourself with all of the sudoku tips you can find. While you can get by just learning some of the basic strategies. to get through the more advanced puzzles you will need to know the more advanced techniques. On our sudoku tips page we have listed some of the better strategies you can start using right now on your solving.

These tips are effective and if applied correctly can really help you in solving sudoku faster. While there are many tips and strategies available to help you learn sudoku, not all are good. In fact many may just confuse you or even make solving puzzles harder! if you are just starting out than you should begin with the easier techniques until you have mastered them. Than move on to the more medium level strategies applying what you have learned before going to the advanced levels.

To get good at sudoku you need to practice and know which strategies to apply to any given puzzle. Over time this becomes second nature but until you have mastered them just take it slow and work through them step by step. If you get stuck you can always use our sudoku solver to complete any unfinished puzzles and learn from your mistakes so that you do better next time.

Sudoku Solver Downloads

We have added a series of free sudoku solver downloads for you to save to your hard drives. They are a collection of pdf sudoku puzzle books that contain multiple puzzles in various levels of difficulty for solvers of all levels.

To get the sudoku solver downloads simply visit the download page and choose which level of puzzle you wish to download. Than simply right click on the link and chose save as to save them onto your computer right away.

You are free to use them as you like as long as they remain for personal use only. We have included the solutions to the medium and hard level puzzles as different pdf's so you will have to download them in addition to the puzzle books themselves . You can download just one or all four of the collection.

Sudoku Solutions

Sudoku Solutions To Solve Sudoku

SuDoku comes from the japanese language and roughly translated means "single number". It has been popular in Japan since the 1980s where it than took off becoming popular in countries around the world.

Rules

The rules of sudoku are very simple you fill in a 9 by 9 grid  that consists of cells with the numbers 1 through 9 so that they only appear just once in each row, line or 9×9 grid.

There are over 6 trillion possible sudoku solutions but to be considered unique it must have at least 17 starting numbers. You judge the level of difficulty of a puzzle by how many number you initially start of with. The more numbers you start with the easier level puzzle. In contrast the less numbers of candidates you begin with the harder the level of puzzle.


Sudoku Solving Techiques

This is a list of the various solving techniques you can use to arrive at possible sudoku solutions. It has been arranged in groups by difficulty level. Other names that these techniques are known under have been added in brackets. 

Simple Solving Strategies

  • Naked Singles (also known as the lone number)
  • Hidden Single/ hidden singles

Medium Level Solving Techniques

  • Pointing Pairs, and it's sister Pointing Triples
  • Naked Pairs, Naked Quads, Naked Triples,
  • Hidden Pair,s Hidden Triples

Advanced Sudoku Solving Techniques

  • The X-Wing
  • Sword Fish
  • Jelly Fish

For beginners of sudoku it might be a good idea to start off with the easier level puzzles and than get used to the various solving strategies before moving up to the more difficult levels. Another tip you can use is to study the solutions that come in many sudoku puzzle books, If you look at the bottom of many popular sudoku books they usually include the solutions at the bottom that you can study and learn from.

The trick to using this to your advantage is to do your best to come to a solution to whatever puzzle you are working on than studying the completed answer to figure out where you went wrong.

While this may seem a to be a bit tedious, often you will notice a pattern or some obvious mistake you were making that you mighty not have noticed before. Discovering these mistakes help you in solving future puzzles and build upon your general skill level. Regardless of which sudoku solution you do use to complete your puzzles, solving sudoku is a joy that's not only great for the mind but also provides hours of entertainment.

Sudoku Solver Algorithm

Sudoku Solving Algorithm

 

In this post we are going to take a look at a sudoku solving algorithm that solves sudoku puzzles. One of the key features to this particular algorithm is that it will eventually end and let us know if the particular sudoku in question has a solution.

If so it will reveal at least one solution it is possible to have more than one, in fact it is possible to have several for an individual puzzle.

A Simple Sudoku Solving Algorithm

Here is a very simple sudoku solving algorithm that starts with a grid that is already  partially completed. For more information visit code project or cornell university mathematics and sudoku

 

Public Sub GenerateGrid()

    Clear()
    Dim Squares(80) As Square 'an arraylist of squares: see line 86
    Dim Available(80) As List(Of Integer) 'an arraylist of generic lists (nested lists)
    'we use this to keep track of what numbers we can still use in what squares
    Dim c As Integer = 0 'use this to count the square we are up to

    For x As Integer = 0 To Available.Length - 1
        Available(x) = New List(Of Integer)
        For i As Integer = 1 To 9
            Available(x).Add(i)
        Next
    Next

    Do Until c = 81 'we want to fill every square object with values
        If Not Available(c).Count = 0 Then 	'if every number has been tried 
					'and failed then backtrack
            Dim i As Integer = GetRan(0, Available(c).Count - 1)
            Dim z As Integer = Available(c).Item(i)
            If Conflicts(Squares, Item(c, z)) = False Then 	'do a check with the 
							'proposed number
                Squares(c) = Item(c, z) 	'this number works so we add it to the 
					'list of numbers
                Available(c).RemoveAt(i) 'we also remove it from its individual list
                c += 1 'move to the next number
            Else
                Available(c).RemoveAt(i) 	'this number conflicts so we remove it 
					'from its list
            End If
        Else
            For y As Integer = 1 To 9 'forget anything about the current square
                Available(c).Add(y) 'by resetting its available numbers
            Next
            Squares(c - 1) = Nothing 'go back and retry a different number 
            c -= 1 'in the previous square
        End If
    Loop

    Dim j As Integer ' this produces the output list of squares
    For j = 0 To 80
        Sudoku.Add(Squares(j))
    Next

     'This algorithm produces a Sudoku in an average of 0.018 seconds, 
     'tested over 5000 iterations
     End Sub
  1. Clear will simply delete any of the previously run Sudoku puzzles.
    Public Sub Clear()
        Sudoku.Clear()
    End Sub
  2. Square This is the name for the particular structure. it could be any name just square was the one actually chosen. Each instance you see of square will represent an object with information about the particular value, index and relative positions of each of the square contained in it's its region (3×3 area), row, column, index and value.
    Public Structure Square
        Dim Across As Integer
        Dim Down As Integer
        Dim Region As Integer
        Dim Value As Integer
        Dim Index As Integer
    End Structure
  3. GetRan will retrieve a random number of between 0 and the last index of the current list,
    Private Function GetRan(ByVal lower As Integer, ByVal upper As Integer) _
    	As Integer
        Dim r As New Random
        GetRan = r.Next(lower, upper - 1)
    End Function
  4. Conflicts this is the most important function in the overall algorithm. It will tell us whether the number we are considering is actually going to work. To do this it takes the squares currently produced and compares them with an instance of a not yet produced square. This test square ('the hypothetical') is made in the 'Item' function below.
    Private Function Conflicts(ByVal CurrentValues As Square(), _
    	ByVal test As Square) As Boolean
          
    For Each s As Square In CurrentValues
        If (s.Across <> 0 And s.Across = test.Across) OrElse _
               (s.Down <> 0 And s.Down = test.Down) OrElse _
               (s.Region <> 0 And s.Region = test.Region) Then
                
            If s.Value = test.Value Then
                Return True
            End If
        End If
    Next
    
    Return False
    End Function
  5. Item takes the given value and the given index and returns a square item containing all relevant information. It does this by calling on 3 other functions to acquire the row, column and region of the square. These other functions use simple math to determine the row, column etc.
    Private Function Item(ByVal n As Integer, ByVal v As Integer) As Square
        n += 1
        Item.Across = GetAcrossFromNumber(n)
        Item.Down = GetDownFromNumber(n)
        Item.Region = GetRegionFromNumber(n)
        Item.Value = v
        Item.Index = n - 1
    End Function
    
    Private Function GetAcrossFromNumber(ByVal n As Integer) As Integer
        Dim k As Integer
        k = n Mod 9        
        If k = 0 Then Return 9 Else Return k
    End Function
    
    Private Function GetDownFromNumber(ByVal n As Integer) As Integer
        Dim k As Integer
        If GetAcrossFromNumber(n) = 9 Then
            k = n9   
        Else
            k = n9 + 1
        End If
        Return k
    End Function
    
    Private Function GetRegionFromNumber(ByVal n As Integer) As Integer
        Dim k As Integer
        Dim a As Integer = GetAcrossFromNumber(n)
        Dim d As Integer = GetDownFromNumber(n)
    
        If 1 <= a And a < 4 And 1 <= d And d < 4 Then
            k = 1
        ElseIf 4 <= a And a < 7 And 1 <= d And d < 4 Then
            k = 2
        ElseIf 7 <= a And a < 10 And 1 <= d And d < 4 Then
            k = 3
        ElseIf 1 <= a And a < 4 And 4 <= d And d < 7 Then
            k = 4
        ElseIf 4 <= a And a < 7 And 4 <= d And d < 7 Then
            k = 5
        ElseIf 7 <= a And a < 10 And 4 <= d And d < 7 Then
            k = 6
        ElseIf 1 <= a And a < 4 And 7 <= d And d < 10 Then
            k = 7
        ElseIf 4 <= a And a < 7 And 7 <= d And d < 10 Then
            k = 8
        ElseIf 7 <= a And a < 10 And 7 <= d And d < 10 Then
            k = 9
        End If
        Return k
    End Function

Sudoku Solver Software

Sudoku Solver Software

Fortunately if you are like many people there are times that that despite your best efforts you get stuck trying to solve a sudoku puzzle. In these cases you might want to consider using sudoku solving software to complete the puzzle.  Often you can easily find find these type of programs available online.

We decided to add our own version of a solver you can use, it is on the main page of our website and will allow you to quickly solve any puzzles you may be struggling with.

While many people think that using an online sudoku solver is cheating in a way, we feel that if you have used up all possibilities and are still stuck on your puzzle. Than it is better to find the solution than throw it away, or suffer wondering what the last few cells of the puzzle where!

With that in mind feel free to use our solver if you have any puzzles you are currently stuck on. But please only use it as a last resort, it is far better to solve sudoku the old fashioned way by using your mind. It brings far more enjoyment and you will find that after a while solving sudoku becomes easier and easier and you won't have to resort to using a sudoku solver at all.

Sudoku Hints

Sudoku Hints

Getting good at sudoku involve two main things, first you need to familiarize yourself with the basic solving tips and techniques than you need to practice. While practice alone is very beneficial to learning how to solve sudoku, it helps to have some good sudoku hints to  fall back on. While you can fall back on using a sudoku solver or looking at the solution if you become stuck. It is far more enjoyable to press on finally arriving at the correct solution.

Sudoku is like any game or hobby at first it's difficult to play but over time as you become more experienced the puzzles become easier and easier. The trick is to learn patience while your first starting out.  The smart player begins with the easier puzzles learning all the sudoku hints as they solve knowing that it will prepare them for the more difficult puzzles. After confidence is built on the easier levels it's time to move up to medium and finally to the more advanced or killer sudoku.

Sudoku is one of those puzzles where you never seem to get bored, Challenging and highly addictive, they provide the perfect opportunity to sharpen your mind and improve your logic and reasoning abilities. It's no wonder that of all the different logic games sudoku remains the most popular of all time.

Sudoku Strategy

Learning sudoku can be frustrating at first for many people, especially if they are new to the game. Over time as you learn all the different sudoku strategies you will get better and find the game far more enjoyable. We just added a page to the site about sudoku strategy that you should take a moment to check out. You can locate it from the main menu of the blog or simply go to sudoku strategy directly from here.

A good sudoku guide will definately help you far more than any of the tips you can pick up simply by surfing around the internet. However you can still get some good strategies from this page. It was recently added during a main site update along with other pages and a cleaner version of the solver. I hope you enjoy it, If you have any questions feel free to email me,