Cryptogram Helper Source Code


Cryptogram.java
User interface and main solver loop.
LetterProbability.java
26x26 probability matrix of letter translation likelihoods, and solver code for computing new matrix from word probabilities.
WordPatterns.java
Word frequency list lookup, code for parsing phrases into words, and computation of letter repetition patterns within words.
freqc.txt.gz
English word frequency dictionary (provided for reference only; the actual applet doesn't use this file).
trie.gz
List of dictionary words, compressed by running trieize.c on words.txt and gzipping the output.
freq.gz
List of word frequencies, compressed by running freq.c on words.txt and gzipping the output.
puzzles.txt.gz
Plaintext list of lines for "Import Random Cryptogram" button. Pressing the button chooses one line and picks a random cryptogram (with no letter translated to itself).

Return to Cryptogram Helper Cryptogram Helper algorithm