![]() ![]() ![]() These solvers are usually fast, but for the few I have tried, they are not the fastest. There are DLX-based solvers in C, C++, Java, C#, Python, Ruby and Javascript. Solving Sudoku puzzles can be reduced to a graph coloring problem, or more often an exact cover problem that can be solved with Knuth’s elegant Dancing Links algorithm (DLX). A brief overview of Sudoku solving algorithms ![]() I will focus more on the practical implementations. Wiki gives a good brief view of the existing algorithms. A variety of methods arise to solve Sudoku. On the other hand, lacking a definite answer makes Sudoku more interesting. Finding the solution largely relies on black magic. However, solving Sudoku is known to be an NP-complete problem, which means no efficient algorithm exists so far. Lots of attempts have been made to solve Sudoku using programs. Sudoku is probably the most popular puzzle nowadays. Is there an interesting problem that is easy to implement and informative for measuring the performance programming languages? Sudoku. Nonetheless, I quickly gave up because of its complexity and because I am not quite interested in the problem itself. When I saw Google’s recent publication ( PDF) on the real-world comparison of C++, Java, Scala and Go, I was wondering if I could consider to adopt these problems in my benchmark. One of the major concerns is that it is a microbenchmark that rarely measures the real-world performance. I conducted a programming language benchmark a couple of months ago. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |