https://github.com/trkotovicz/document-indexing-algorithm-py
Programa que simula um algoritmo de indexação de documentos similar ao do Google. Ele é capaz de identificar ocorrências de termos em arquivos TXT.
https://github.com/trkotovicz/document-indexing-algorithm-py
dequeue document-indexing doubly-linked-list-python estrutura-de-dados fifo lifo linked-lists python queue stack tads
Last synced: 10 months ago
JSON representation
Programa que simula um algoritmo de indexação de documentos similar ao do Google. Ele é capaz de identificar ocorrências de termos em arquivos TXT.
- Host: GitHub
- URL: https://github.com/trkotovicz/document-indexing-algorithm-py
- Owner: trkotovicz
- Created: 2023-02-08T01:28:25.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-02-10T20:04:00.000Z (almost 3 years ago)
- Last Synced: 2025-01-30T07:44:08.877Z (12 months ago)
- Topics: dequeue, document-indexing, doubly-linked-list-python, estrutura-de-dados, fifo, lifo, linked-lists, python, queue, stack, tads
- Language: Python
- Homepage:
- Size: 32.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Algoritmo de Indexação de Documentos
Programa que simula um algoritmo de indexação de documentos similar ao do Google. Ele é capaz de identificar ocorrências de termos em arquivos TXT.
Este projeto não tem como foco a análise de significados ou busca por sinônimos.
## Contexto
O programa simula o algoritmo de indexação de documentos similar ao do google. Ou seja, um programa que permite anexar arquivos de texto e posteriormente operar funções de busca sobre tais arquivos.
Com a quantidade de informações disponíveis na Web, encontrar o que você precisa seria quase impossível sem nenhuma ajuda para classificá-las. Os sistemas de classificação do Google organizam centenas de bilhões de páginas da Web, no índice da pesquisa, para fornecer os resultados mais úteis e relevantes em uma fração de segundo. Além disso tudo, a a Google também precisa se preocupar em apresentar os resultados de uma maneira que ajude você a encontrar o que está procurando com mais facilidade ainda.
### Analisar palavras
Compreender o significado da sua pesquisa é crucial para retornarmos boas respostas. Por isso, para encontrar páginas com informações relevantes, nosso primeiro passo é analisar o significado das palavras na consulta de pesquisa. Desenvolvemos modelos linguísticos para decifrar as sequências de palavras que precisamos procurar no índice.
Não iremos nos apegar a análise de significados ou busca por sinônimos. Nosso objetivo será identificar ocorrências de termos em arquivos TXT. Neste contexto, foi criado um programa que permite anexar arquivos de texto e posteriormente operar funções de busca sobre tais arquivos.
Sendo assim o programa possui dois módulos:
- Modo gerenciamento de arquivos;
- Modo de buscas.
## Habilidades desenvolvidas:
Manipulação de Pilhas.
Manipulação de Deque.
Manipulação de Nó & Listas Ligadas.
Manipulação de Listas Duplamente Ligadas.
## Ambiente Virtual
O Python oferece um recurso chamado de ambiente virtual, onde permite sua máquina rodar sem conflitos, diferentes tipos de projetos com diferentes versões de bibliotecas.
Criar o ambiente virtual
```
$ python3 -m venv .venv
```
Ativar o ambiente virtual
```
$ source .venv/bin/activate
```
Instalar as dependências no ambiente virtual
```
$ python3 -m pip install -r dev-requirements.txt
```
Com o seu ambiente virtual ativo, as dependências serão instaladas neste ambiente.
Quando precisar desativar o ambiente virtual, execute o comando "deactivate".
O arquivo `dev-requirements.txt` contém todas as dependências que serão utilizadas no projeto.
---
Projeto desenvolvido por [Thais R Kotovicz](https://www.linkedin.com/in/thaiskotovicz/).