On Dec 6, 2007, at 11:44 AM, Brad Greenlee wrote:
I haven't written any Perl for fun in a while, but I recently
entertained myself a bit by writing a Boggle puzzle solver in Ruby:
http://blog.footle.org/2007/12/05/cheating-for-fun/
I'm not sure if this particular puzzle has come up before in FWP,
but I was curious as to how closely this yak could be shaved in
Perl. I suspect Ton could do it in somewhere around 40 characters.
Anyone interested?
Brad
Attached is my version coded in Perl which produces identical
output. I employed a shortcutting algorithm that resulted in a 77x
speedup over your Ruby implementation using the same word
dictionary. My algorithm stops looking when the current prefix
matches no known word. However, my code is 33% longer, counting
lines. I think those extra 30 lines are worth saving 7.5 minutes of
execution time.
% time perl boggler.pl lyltonzigororwho > boggler.pl.out
4.383u 0.275s 0:06.46 71.9% 0+0k 0+0io 0pf+0w
% time ruby boggler.rb lyltonzigororwho > boggler.rb.out
340.764u 5.144s 7:45.79 74.2% 0+0k 0+4io 0pf+0w
% diff boggler.pl.out boggler.rb.out
Chris
boggler.pl
Description: Text Data
|