January 19th, 2008

hair

sudoku solver

Just for fun, I implemented a Sudoku solver entirely in Javascript. It uses Knuth's Dancing Links technique, which is an efficient way of solving "exact cover" problems (of which Sudoku is a well-known example).

This is hardly innovative—such solvers have probably been implemented thousands of times—but my implementation of Dancing Links is one of the few I've found written in Javascript. Also, my implementation exists entirely within one HTML file, so you can save it to your computer and use it to solve puzzles offline.