Trabalho algoritmo indexação/busca

1 resposta
I

Bom dia pessoal,

Tenho que fazer um trabalho de algoritmos que é basicamente resolver o seguinte problema:

Criar um mecanismo de busca para páginas web em uma intranet. Isso serviria para que as páginas fossem exibidas mais rapidamente.
Seriam páginas com texto e arquivos texto.
O algoritmo não precisa ser funcional apenas pseudo-código e que ilustre bem os conceitos.

Pois então. Eu acho que daria pra fazer isso com um algoritmo simples de árvore binária. Onde cada página/arquivo texto seria um nó.

Eu acho a idéia até simples d+ por isso não sei se é válida. Alguem pode dar uma opinião, dica?

[]'s

1 Resposta

T

Uma indexação de páginas seria algo mais ou menos assim:

  • Para cada página HTML no site:
    => Quebrar a página em palavras (você tem de remover os tags HTML e ficar apenas com o texto!)
    => Pôr a palavra como chave em uma hashtable. O valor seria a URL dessa página, e mais algumas informações, como o número de vezes (freqüência) que a palavra aparece nessa página. Note que uma palavra pode aparecer em várias páginas, portanto não seria um simples HashMap, mas um HashMap cuja chave é uma String, e cujo valor é uma lista de URLs, freqüências etc.
    => Algumas palavras não devem entrar na hashtable porque são muito comuns, como “a”, “o”, “as”, “os”, “para” etc.
    => Você pode interpretar os links <a href=> para puxar todas as páginas do site (“crawl”), mas isso na verdade não é tão simples assim.

  • Para fazer uma busca:
    => Procurar a palavra na hashtable.
    => Localizar as páginas que têm mais vezes a tal palavra, e posicioná-las mais alto na busca.

Criado 11 de julho de 2006
Ultima resposta 11 de jul. de 2006
Respostas 1
Participantes 2