Gaddag Data Structure – A Way To Quickly Find Scrabble Words
GADDAG is a data structure proposed by Steven Gordon that is optimized for searching for words in games like Scrabble and Words With Friends. It’s similar to a Trie prefix tree, however it’s organized...
View ArticleThe Trie Data Structure – A Prefix Tree for Autocompletes
After covering the GADDAG Data Structure it seems like a good idea to follow up on the structure it’s based on, the Trie. The Trie is a very special case structure where that’s optimized for prefix...
View ArticleThe BK-Tree – A Data Structure for Spell Checking
Proposed by Burkhard and Keller in 1973, the BK-Tree is a data structure used for spell checking based on the Levenshtein Distance between two words, which is basically the number of changes you need...
View Article6 Mistakes That Slow Down Your Website
This is just some random musings on common problems I’ve seen over several years of web development. 1) No indexes on data (in databases or elsewhere) It’s very easy for developers to use a small data...
View ArticleTruly Awful Algorithms – Gnome Sort
During my pursuit to learn about new algorithms I came across one with a funny name, and a simple implementation, and is generally just awful to use in any real world case. So here we have Gnome Sort....
View ArticleThe Bloom Filter – Probably Answering The Question “Do I Exist?”
Originally conceived of in 1970 by Burton Howard Bloom, the Bloom Filter is a probabilistic data structure that can determine if something is likely to be a part of a set. The upside of a Bloom filter...
View ArticleTruly Awful Algorithms – BogoSort
After covering the semi-awful GnomeSort, I decided to dig into papers on sorting algorithms to see if anyone’s ever published something on a completely awful sort algorithm. This led to BogoSort, first...
View ArticleInverted Indexes – Inside How Search Engines Work
An Inverted Index is a structure used by search engines and databases to make search terms to files or documents, trading the speed writing the document to the index for searching the index later on....
View Article