O objetivo deste TP eh investigar conceitos referentes a estruturas de indexacao 
que empregam arvores B+.

Considerando as bases de dados definidas anteriormente, voce deve:

1. definir blocos de registros sequenciais de tamanho n. Estes blocos conterao
n registros ordenados da base de tamanho k (n e k sao parametros fornecidos 
pelo "patrao") e sao ligados por apontadores que mantem o esquema de ordenacao
dos registros da base. Os blocos podem sofrer "split" (no caso de insercoes) e 
"underflow" (no caso de remocoes), como visto em sala de aula. 
Trate estes eventos adequadamente. 

a) Para a base de dados ALUNOS:

Os blocos podem conter, a seu criterio, apenas as chaves primarias (RA), com 
enderecos para o arquivo original contendo a totalidade dos registros, ou os 
registros inteiros da base. Defina os delimitadores para cada um 
dos blocos que podem ser de tamanho fixo ou minimal (arvore B+ de prefixo simples).

b) Para a base de dados PROFESSORES: 

A consulta sera feita por nome(s) E/OU sobrenome(s) dos professores e os delimitadores
podem ser de tamanho fixo ou minimal. Neste caso, os blocos serao ordenados por 
cada um dos nomes e sobrenomes dos professores. Uma consulta do tipo:

BONIFACIA DAS CONEGUNDES  

implica, basicamente, em:


 i. reconhecimento de uma stop word (das)
 ii. busca do bloco que contem Bonifacia
 iii. busca do bloco que contem Conegundes
 iv. intersecao dos blocos contendo as chaves primarias associadas a Bonifacia 
     e Conegundes.


2. Para cada uma das consultas acima, crie, em seguida, o conjunto de indices 
(delimitadores) de acordo com a estrutura  da arvore B+ vista em sala de aula. Para
possibilitar testes do seu programa, o numero p de chaves por pagina deve ser fornecido 
tambem pelo seu "chefe".

 
Data de entrega: a discutir em sala de aula.
