CSI429 - Algoritmos e Estruturas de Dados II

Ementa: Organização dos dados em memória secundária. Arquivos: Acesso sequencial e acesso
randômico. Registros de tamanho fixo e variável. Ordenação em disco. Reutilização de espaço.
Indexação de arquivos: Árvores B, B+ e B*. Tabela Hash. Casamento de padrões. Compressão
de dados. Criptografia.

Conteúdo programático:
1. Organização dos dados em memória secundária
2. Arquivos
2.1. Acesso Sequencial e randômico.
2.2. Organização de dados em arquivos
2.3. Registros de tamanho fixo;
2.4. Registros de tamanho variável;
3. Ordenação em disco: Interpolação e Interpolação polifásica;
3.1. Reutilização de espaço em arquivos.
i. Fragmentação interna;
ii. Fragmentação externa.
4. Indexação de dados em disco
4.1. Árvores B;
4.2. Árvores B+;
4.3. Árvores B*.
5. Compressão de dados
5.1. Código de Huffman;
5.2. Busca em arquivos comprimidos.
6. Hash
6.1. Função de dispersão;
6.2. Tratamento de colisões;
6.3. Eficiência de tabelas Hash.
7. Busca em arquivos de texto: Casamento de padrões
7.1. Força bruta;
7.2. Shift And;
7.3. Boyer Moore;
7.4. Boyer–Moore–Horspool;
7.5. Knuth–Morris–Pratt algorithm (KMP).
8. Algoritmos de busca aproximada
9. Criptografia
9.1. Cifra de César e Cifra de Vigenère;
9.2. RSA.

Semester: 

02

Offered: 

2021