diff options
Diffstat (limited to 'gi/posterior-regularisation/Lexicon.java')
-rw-r--r-- | gi/posterior-regularisation/Lexicon.java | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/gi/posterior-regularisation/Lexicon.java b/gi/posterior-regularisation/Lexicon.java new file mode 100644 index 00000000..9f0245ee --- /dev/null +++ b/gi/posterior-regularisation/Lexicon.java @@ -0,0 +1,32 @@ +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +public class Lexicon<T> +{ + public int insert(T word) + { + Integer i = wordToIndex.get(word); + if (i == null) + { + i = indexToWord.size(); + wordToIndex.put(word, i); + indexToWord.add(word); + } + return i; + } + + public T lookup(int index) + { + return indexToWord.get(index); + } + + public int size() + { + return indexToWord.size(); + } + + private Map<T, Integer> wordToIndex = new HashMap<T, Integer>(); + private List<T> indexToWord = new ArrayList<T>(); +}
\ No newline at end of file |