Maquina de Busca

Sou novo em Java e estou com o seguinte problema:

Na disciplina de OGA (Organização e Gerenciamento de Arquivo) o professou deu o seguinte problema que me deixou perdido.

Surgestoes por favor.

Nesta etapa, deverá ser desenvolvida uma máquina de busca simples, que seja capaz de realizar pesquisa de texto em arquivo HTML.
Esta máquina será dividida em 2 módulos:

  1. Geração do arquivo invertido (Usuário administrativo)
    a. Definição do arquivo HTML (salvo localmente) a ser processado.
    b. Processamento do arquivo invertido baseado no conteúdo do arquivo informado no item anterior.

i. Inserir todas as palavras que não fazem parte do mundo HTML, como TAG e Scripts, em estrutura de memória primária (conteúdo efetivo).

ii. Gravar em arquivo invertido o conteúdo que foi carregado na
memória primária. Cada registro deste arquivo invertido
deverá estar no seguinte formato:
Palavra1 (num_linha, posição_linha,), (num_linha, posição_linha)
Palavra2 (num_linha, posição_linha,)
Palavra3 (num_linha, posição_linha,), (num_linha, posição_linha)
.
.
.
PalavraN (num_linha, posição_linha,) (num_linha, posição_linha)

Onde num_linha indica o número da linha que ocorreu a palavra e posição_linha a
posição na linha onde ocorreu a palavra.

  1. Pesquisa Seqüencial no arquivo Invertido (Usuário final)
    a. Usuário informa a palavra a ser pesquisada.
    b. Sistema procura a palavra informada pelo usuário no arquivo invertido.
    c. Sistema exibe o trecho onde a palavra é encontrada (frase com 5 palavras antes e 5 palavras depois da palavra encontrada).

O.B.S: A um ano mexo apenas com c/c++.

Brigado!!!