Trabalho AED
Departamento de Sistemas e Computação
Disciplina: Algoritmos e Estruturas de Dados
Trabalho de implementação DATA DA ENTREGA: 29 a 30 DE JUNHO.
Objetivo: praticar programação implementando a estrutura do tipo Árvore B, ARMAZENADA EM DISCO, OU SEJA, DEVE ME PERMITIR RECUPERAR OS DADOS POSTERIORMENTE.
O trabalho consiste em implementar em Java as classes para implementar a estrutura da árvore B e seus nodos. Deverão ser implementados, no mínimo, os métodos para criar a árvore, inserir, pesquisar e remover chaves da árvore.
O projeto deverá representar a árvore em uma classe e o nodo em outra classe (ou outras, se necessário). Na classe árvore deverá incluir as operações relativa a árvore como criar, recuperar já existente, inserir, remover, pesquisar ...
UM DOS CRITÉRIOS A SER AVALIADO É QUANTIDADE ESPAÇO GASTO EM DISCO PARA ARMAZENAR ESSA ESTRUTURA.
A árvore B é uma árvore n-ária, sendo que para o nosso trabalho, na criação deverá ser informada a ordem m da árvore. A ordem determina a quantidade de chave em cada Nodo (registro). Em uma árvore de ordem m = 2 os nodos podem ter no mínimo 2 chaves e 3 descendentes e, no máximo 4 chaves e 5 descendentes, com exceção da raiz, que poderá ter apenas uma chave e 2 descendentes.
Abaixo temos um exemplo de uma árvore B com ordem m=2.
Na próxima imagem temos um exemplo da operação de remoção de uma chave da árvore B.
Um vídeo da inserção em uma árvore com m=1 https://www.youtube.com/watch?v=coRJrcIYbF4&feature=related http://www.ft.unicamp.br/liag/siteEd/implementacao/arvore-avl-estruturada.php
Descrição:
Quando o programa cria uma estrutura do tipo ArvoreB nova, será criado um arquivo onde serão armazenados os nodos da Árvore B. Portanto, a toda estrutura do tipo ÁrvoreB teremos um arquivo associado. Esse arquivo será acessado em bloco, ou seja, o programa chama o método para leitura leBloco(int numeroBloco) especificando o número do bloco a ser lido.
No