package tsp.application; import java.util.*; public class SearchEngine { HashMap> inverseIndex; double nDocuments; public SearchEngine(){ this.inverseIndex = new HashMap<>(); this.nDocuments = 0; } public void add(Document document){ addInverseIndex(document); nDocuments += 1; } private void addInverseIndex(Document document){ String[] words = document.preprocess(); HashSet processed = new HashSet<>(); for (String word: words){ if (processed.contains(word)) continue; if (!inverseIndex.containsKey(word)){ ArrayList newAL = new ArrayList<>(); inverseIndex.put(word, newAL); } inverseIndex.get(word).add(document); processed.add(word); } } }