According to Wikipedia
The most successful algorithm to date is Andrew Golding and Dan Roth's "Winnow-based spelling correction algorithm", published in 1999, which is able to recognize about 96% of context-sensitive spelling errors, in addition to ordinary non-word spelling errors.
Is this up-to-date? What if we limit to algorithms not covered by patents?
EDIT: After reading the papers on Winnow, it only seems to support distinguishing a limited number of confusion sets, which need to be chosen before training, and so can't serve for general spelling correction anyway.