Background I’ve implemented a sudoku-solver algorithm (backtracking) that looks like this: This solution is working fine (it can solve sudokus). What I try to achieve I now want to achieve that the algorithm tells me, whether there is only one solution or more solutions. What I’ve tried I tried to achieve my goal, by changing the return type to an

# Tag: backtracking

## Knight tour problem – order of moves affect performance

I was trying to implement a solution for knight tour problem. I faced an interesting issue. I would like to know the reason for the behavior. This is the code – it works fine. Now we could run this, starting with knight position as (2, 2) in the matrix When i tried to run the starting position as (0, 0)

## Given n and k, return the kth permutation sequence

The set [1,2,3,…,n] contains a total of n! unique permutations. By listing and labeling all of the permutations in order, We get the following sequence (ie, for n = 3 ) : “123” “132” “213” “231” “312” “321” Given n and k, return the kth permutation sequence. For example, given n = 3, k = 4, ans = “231”. There

## Knights tour – results in an infinite loop and i can’t figure out why

I’m trying to solve the knight’s tour problem using backtracking. I think the algorithm I have should work. I’ve tried but I can’t figure out why it isn’t working. It results in an infinite loop. However if I comment out the line that back track solutionBoard[dst.x][dst.y]=-1; it works! I just don’t understand why! Any help would be appreciated. Answer Your

## Why is this called backtracking?

I have read in Wikipedia and have also Googled it, but I cannot figure out what “Backtracking Algorithm” means. I saw this solution from “Cracking the Code Interviews” and wonder why is this a backtracking algorithm? Answer “Backtracking” is a term that occurs in enumerating algorithms. You built a “solution” (that is a structure where every variable is assigned a

## StackOverflowError when running my “Knight’s Tour” (it’s pretty much finished otherwise)

I’m trying to make a program that goes through all squares of a chessboard (size doesn’t really matter, but for now it’s 6×6) with a knight, called a “Knight’s Tour” check it out on wiki. The tour is supposed to be closed, which means the knight on the last visited square can “attack” the square he started at. The code