Este projeto em Java tem como objetivo ler uma base de dados de um arquivo CSV e transformá-la em uma base de dados utilizando o Java. Em seguida, realiza operações CRUD (Create, Read, Update, Delete) sobre essa base de dados, abordando diferentes estruturas de dados para organização e manipulação eficiente dos registros.Foi desenvolvido como parte da disciplina de Algoritmos e Estruturas de Dados 3, ministrada pelo professor Hayala Curto, na Universidade PUC Minas, unidade Coração Eucarístico.
- Árvore B+: Utilizada para indexação e busca eficiente dos registros.
- Tabela de Hash: Utilizada para indexação e busca eficiente dos registros.
- Outras Estruturas: Também são utilizadas estruturas como compressão de dados (LZW), criptografia (Cifra de César, DES), e algoritmos de busca (KMP, Força Bruta).
O programa oferece as seguintes funcionalidades através de um menu interativo:
- Criar Registro: Permite ao usuário criar um novo registro na base de dados.
- Ler Registro: Permite ao usuário ler um registro específico da base de dados.
- Atualizar Registro: Permite ao usuário atualizar um registro existente na base de dados.
- Deletar Registro: Permite ao usuário excluir um registro da base de dados.
- Ordenação Externa: Realiza ordenação externa dos registros.
- Buscar na Árvore: Busca um registro na estrutura de Árvore B+.
- Buscar no Hash: Busca um registro na estrutura de Tabela de Hash.
- Compactação e Descompactação (LZW): Realiza a compactação e descompactação dos dados utilizando o algoritmo LZW.
- Compactação e Descompactação (Huffman): Realiza a compactação e descompactação dos dados utilizando o algoritmo de Huffman.
- Busca de Padrões (KMP): Realiza a busca de padrões utilizando o algoritmo Knuth-Morris-Pratt.
- Busca de Padrões (Força Bruta): Realiza a busca de padrões utilizando o método de Força Bruta.
- Criptografia e Descriptografia (Cifra de César): Realiza a criptografia e descriptografia dos dados utilizando a Cifra de César.
- Criptografia e Descriptografia (DES): Realiza a criptografia e descriptografia dos dados utilizando o algoritmo DES.
Para executar o programa, basta compilar e rodar o arquivo Menu.java
. Certifique-se de possuir todas as dependências necessárias e que os caminhos dos arquivos estejam corretamente configurados.
- Henrique de Almeida Diniz
- Samuel Luiz da Cunha Viana Cruz