Estruturas de Dados Multilistas

Olá , Alguém poderiam me passar algumas dicas de como implementar esse exercício?

Obrigado!

Projetar e implementar um sistema de tabelas indexado com multilistas e/ou listas invertidas

A estrutura básica (subjacente) é de livre escolha, mas deve permitir busca pela chave do elemento. O projeto deve incluir ao menos 3 índices distintos (sendo que 1 deles deve ser por faixa de valores). O sistema resultante deve dar a possibilidade de:

* inclusão de dados
* remoção de dados
* listagem completa dos dados
* consultas por chave
* consultas simples pelos índices (todos os elementos que atendam 1 critério de busca)
* consultas combinadas pelos índices (todos os elementos que atendam 2 critérios de busca)

Dica: use java.util.TreeMap para facilitar a sua implementação.