Como conseguiu gerar índices diferentes para palavras diferentes que começam com a mesma letra, se você utiliza só a primeira letra de cada palavra para gerar o índice?
private int calculaIndiceDaTabela(String palavra) {
return palavra.toLowerCase().charAt(0) % 26;
} aqui