CS267
Chris Pollett
Apr 20, 2022
buildIndex_ImmediateMerge(M) { I[mem] := empty index //init in-memory index currentPosting := 1; while (there are more tokens to index) { T := next token; I[mem].addPosting(T, currentPosting); currentPosting++; if (I[mem] contains more than M-1 tokens) { if (I[disk] exists) { I[disk] := mergeIndices(I[mem], I[disk]); } else { I[disk] := I[mem]; } I[mem] = empty index } } return; }