title: Space-Efficient Data Structure for Storing a Word List?
body: <p>Is there anything better than a <a href="http://en.wikipedia.org/wiki/Trie" rel="nofollow noreferrer">Trie</a> for this situation?</p>
  
  <ul>
  <li>Storing a list of ~100k English words</li>
  <li>Needs to use minimal memory</li>
  <li>Lookups need to be reasonable, but don't have to be lightning fast</li>
  </ul>
  
  <p>I'm working with Java, so my first attempt was to just use a Set&lt;String&gt;. However, I'm targeting a mobile device and already running low on memory. Since many English words share common prefixes, a trie seems like a decent bet to save some memory -- anyone know some other good options?</p>
  
  <p>EDIT - More info - The data structure will be used for two operations</p>
  
  <ul>
  <li>Answering: Is some word XYZ in the list?</li>
  <li>Generating the neighborhood of words around XYZ with one letter different</li>
  </ul>
  
  <p>Thanks for the good suggestions</p>