alestane

Dictionary tree (confirm recursion)

Feb 3rd, 2014
302
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. local dictionary = {}
  2.  
  3. local function insertWord(dict, word)
  4.     local head, tail = word:upper():match('^(%a)(%a*)$')
  5.     if not head then return false; end
  6.     if not dict[head] then dict[head] = {}; end
  7.     if tail == '' then
  8.         dict[head][''] = true
  9.         return true
  10.     else
  11.         return insertWord(dict[head], tail)
  12.     end
  13. end
  14.  
  15. local function confirmWord(dict, word)
  16.     local head, tail = word:upper():match('^(%a)(%a*)$')
  17.     if not head then return false; end
  18.     if dict[head] then
  19.         if tail == '' then
  20.         else
  21.         end
  22.     else
  23.         return false
  24.     end
  25. end
  26.  
  27. insertWord(dictionary, 'BAG')
  28.  
  29. print(confirmWord(dictionary, 'BAG'))
Advertisement
Add Comment
Please, Sign In to add comment