Ok, but a jigsaw puzzle is sooo not the kind of puzzle that programming is at all about, even the explicit "puzzle" questions that companies like Facebook dish out.
I can't even think of one similarity between the two activities.
I can't even think of one similarity between the two activities.
There's the edge pieces and sorting by color. I've found that sub-sorting by pegs/holes can dramatically help - I had a "picture made up of pictures" puzzle which allowed me to correctly orient the pieces. Knowing even just two of the required slots, combined with the color, reduced the search to a reasonable brute-force search. Plus, by sorting the pieces you could actually do a brute-force without feeling like you might have missed a piece.