Operações de Inserção e Remoção – BTree Resumo

Slides:



Advertisements
Apresentações semelhantes
Exercícios Resolvidos
Advertisements

IFTO ESTRUTURA DE DADOS AULA 05 Prof. Manoel Campos da Silva Filho
Sumário Exercícios
SICAU – Sistema Integrado de Controle das Ações da União
1 ANÁLISE E PROJETO NO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO: CONCEITO MODELOS DE PROCESSO PROCESSO UNIFICADO HISTÓRIA CARACTERÍSTICAS AS QUATRO.
Motivação para listas duplamente encadeadas e circulares
AULA 8 Profa. Sandra de Amo GBC053 – BCC
Sumário, aula 12 Intervenções do Governo Imposição de um Preço Máximos
Múltiplos Os múltiplos de um número inteiro obtêm-se multiplicando esse número por 0, 1, 2, 3, 4, 5, 6, ... Exemplos: M5= {0, 5, 10, 15, 20,
Propagação de Ondas e Antenas
Nome Data Matemática 1 Observa alguns frutos do Outono. Efectua as operações. 2 Observa Quantas patas temos nós ? R : _________________________. 3 Observa.
ES723 - Dispositivos Eletromecânicos
Indice estruturado por Hash
Bulk Loading – Algoritmo AULA 12 - COMPLEMENTO Profa. Sandra de Amo GBC053 – BCC Sandra de Amo.
Indices estruturados por B-TREE
Gerenciamento de Arquivos, Páginas e Registros
Introdução aos Métodos de Acesso AULA 7 – Parte II Profa. Sandra de Amo GBC053 – BCC
B-tree Gerenciamento de Duplicatas Bulk Loading AULA 12 Profa. Sandra de Amo GBC053 – BCC
Método de Acesso Dinâmico - B-Tree AULA 14 Profa. Sandra de Amo Programa de Pós-Graduação em CC - UFU Sistemas de Banco de Dados
Método de Acesso Dinâmico: B-Tree - Deleção Chaves de busca sem duplicatas AULA 9 Profa. Sandra de Amo GBC053 – BCC
Revisão Prova 2 Métodos de Acesso: BTree e Hash AULA 20 Profa. Sandra de Amo GBC053 – BCC
Série de Exercícios.
Árvores.
Árvores Introdução e Aplicações Árvores de Busca Binária Fundamentos
Classificação e Pesquisa de Dados
Árvores Balanceadas (AVL)
Auditoria de Segurança da Informação
Listas Encadeadas.
Provas de Concursos Anteriores
Indexação de Arquivos Página de rosto.
Árvores Equilibradas Sumário Splay B-tree Vermelho-Preto AA e BB
EXERCÍCIOS PARA GUARDA-REDES
Árvore Binária de Busca
Lógica do Sequenciamento das Operações
Como aplicar leis da lógica
Cinemática Plana de um Corpo Rígido Cap. 16
Resultantes de Sistemas de Forças Cap. 4
MECÂNICA - DINÂMICA Cinemática de uma Partícula Cap Exercícios.
Pesquisa em Memória Primária
Árvores binárias de pesquisa com balanceamento
1 António Arnaut Duarte. 2 Sumário: primeiros passos;primeiros passos formatar fundo;formatar fundo configurar apresentação;configurar apresentação animação.
INF70 – Gerenciamento de Banco de Dados 2 Índices baseados em Hash Ilmério Reis da Silva UFU/FACOM/BCC.
Estruturas de Dados com Jogos
Estruturas de Dados com Jogos
Estruturas de Dados com Jogos
Salas de Matemática.
Coordenação Geral de Ensino da Faculdade
Principais operações em Listas TPA Listas Simples Inserção no Final 1.void insereNofinalDaLista(Lista *l, Elemento e){ 2.Lista paux,p; 3. p.
Algorítmos e estrutura de dados III
Introdução teórica A modulação em freqüência consiste na variação da freqüência da portadora proporcionalmente ao sinal de informação. Dado o sinal modulador.
Ordenação Externa de Arquivos – Um exemplo
Revisão Prova 2 Métodos de Acesso – Parte 2 AULA 21 Profa. Sandra de Amo GBC053 – BCC.
EXERCÍCIOS PARA GUARDA-REDES
Arquivos Estruturados por Hashing– Custos I/O
Introdução e Busca Cega
Rotação Simples e Dupla Katia Guimarães
Listas de Prioridades Em muitas aplicações, dados de uma coleção são acessados por ordem de prioridade A prioridade associada a um dado pode ser qualquer.
1 2 Observa ilustração. Cria um texto. Observa ilustração.
DISTRIBUIÇÃO DE FREQÜÊNCIA
CALENDÁRIO SEXY Ele & Ela. CALENDÁRIO SEXY Ele & Ela.
Resolução de sistemas de equações lineares
Campus de Caraguatatuba Aula 2: Somatório e Produtório
Rio Verde - Goiás - Brasil
FORMATANDO O TRABALHO NO WORD 2007
Cinemática Plana de um Corpo Rígido Cap. 16
Nome alunos 1 Título UC. Título – slide 2 Conteúdo Conteúdo 2.
Campus de Caraguatatuba Aula 9: Noções Básicas sobre Erros (3)
GINÁSTICA LABORAL UM NOVO CAMINHO.
AULA 21 Profa. Sandra de Amo BCC - UFU
Árvores B Motivação: pesquisa em disco
Transcrição da apresentação:

Operações de Inserção e Remoção – BTree Resumo Profa. Sandra de Amo BCC - UFU

Inserção de Registros nas Folhas Caso a ocupação não fique acima da máxima : insere, não altera nada nos niveis superiores Caso a ocupação fique acima da máxima Tenta distribuição com vizinho à direita. Caso não der: tenta distribuição com vizinho à esquerda Caso não der: Divide folha com nó inserido, produzindo dois nós N1 e N2. N2 precisa de um ponteiro vindo do nó acima !

Inserção: distribuição nas folhas Não há aumento no número de folhas Não há aumento de ponteiros vindo do nivel superior Não há aumento de registros no nó pai Não há modificações propagadas para os níveis superiores ao nível do nó pai. Só há modificação de registro R no nó pai: R = registro do lado esquerdo do ponteiro apontando para a folha da direita.

Inserção: Divisão de 1 folha em 2 folhas F1 e F2 Número de folhas cresce de um. Número de ponteiros saindo do nó pai cresce de um. Número de registros no nó pai deve crescer de um. Caso nó pai não tenha ocupação máxima antes da alteração: Primeiro registro de F2 sobe para nó pai em posição adequada. Ponteiro à esquerda do novo nó deve apontar para F1 Ponteiro à direita do novo nó deve apontar para F2

Inserção: Divisão de 1 folha em 2 folhas F1 e F2 Caso nó pai tenha ocupação máxima antes da alteração: Subida de registro para o nó pai causa overflow no nó. Nó pai fica com 2d+1 elementos após “subida” Solução simples Divide nó pai em dois nós N1 e N2 com d elementos cada (ocupação mínima) Elemento do meio M sobe para nó pai do pai. Ponteiros do nó pai para seus filhos não são alterados ! Ponteiros à esquerda e à direita de M apontam para N1 e N2 respectivamente

Remoção de Registros nas Folhas Caso a ocupação não fique abaixo da mínima : remove, não altera nada nos niveis superiores Caso a ocupação fique abaixo da minima Tenta distribuição com vizinho à direita. Caso não der: tenta distribuição com vizinho à esquerda Caso não der: Junta folha com nó removido com à direita ou, se não der, com a esquerda.

Remoção: distribuição nas folhas Não há diminuição no número de folhas Não há diminuição de ponteiros vindo do nivel superior Não há diminuição de registros no nó pai Não há modificações propagadas para os níveis superiores ao nível do nó pai. Só há modificação de registro R no nó pai: R = registro do lado esquerdo do ponteiro apontando para a folha da direita envolvida na distribuição

Remoção: Junção de 2 folhas Número de folhas decresce de um. Número de ponteiros decresce de um. Número de registros no nó pai decresce de um. Caso nó pai não fique abaixo da ocupação minima Remove-se registro R à esquerda do ponteiro apontando para o nó do nível inferior, à direita. Caso nó pai fique abaixo da ocupação minima Tenta JUNTAR com nó irmão, à direita ou à esquerda. Caso não der para juntar (pois o resultado teria ocupação maior do que a máxima), DISTRIBUI com um dos nós irmãos (tente primeiro o da direita, se não der, tente o da esquerda).

Remoção: Junção de nós N1 e N2 em um nível intermediário I Há diminuição de nós no nível I. Porém o número K de ponteiros saindo do nível I deve continuar o mesmo que antes da junção, pois o nível abaixo (I+1) necessita de K ponteiros ! Logo, é necessário que apareça um novo registro no nível I. (1) Há diminuição de ponteiros vindo do nível I-1 (pois houve diminuição de nós no nível I). Logo, há diminuição de registros no nível I-1. (2) De (1) e (2) conclui-se que um registro do nível I-1 deve descer para o nível I Qual é este nó que desce ? Registro R à esquerda do ponteiro apontando para o nó N2 (da direita) DESCE para o novo nó juntado N1+N2. Este ponteiro da esquerda é eliminado do nível I-1 Modificação se propaga recursivamente para o nível I-1, já que houve diminuição de nós neste nível

Remoção: Distribuição de elementos entre nós N1 e N2 em um nível intermediário I Não há diminuição de nós no nível I. Não há diminuição de ponteiros vindo do nível I-1. Não há diminuição de registros no nível I-1

Entretanto, as coisas não são tão simples assim... Supondo que o último registro do nó N1 virou primeiro registro do nó N2 22 Nível I - 1 < 22 ≥ 22 Nível I ??? Nó N2 Nó N1 5 13 5 17 13 17 20 30 1 ponteiro para 2 nós ?? O ponteiro vermelho não pode ser eliminado. Logo, o preto será eliminado. O registro 17 deve sumir do nó N1! Nível I+1 1 nó para 2 ponteiros ?? ≥ 17 < 20 ≥30 20 ≤ chave < 22 22 ≤ chave < 30 É preciso mais um registro entre o 20 e o 30 para ganhar um ponteiro !

Ajuste final 22 < 17 ≥ 17 5 13 5 17 13 17 20 30 5 13 17 ≥ 13 < 17 ≥ 17 < 20 ≥30 20 ≤ chave < 22 22 ≤ chave < 30

Exercicio para entregar Você acha que o ajuste final poderia ser feito “subindo” o 20 e descendo o 22 ao invés de “subir” o 17 e descer o 22 ? Explique sua resposta ! 20 5 13 5 17 13 17 22 30 5 13 17 ? ? ? Sugestão: para onde apontariam os ponteiros à direita de 17 e à esquerda de 22 ? E o ponteiro à direita do 22 ? Reveja slides 11, 12 e 13

Exercicio: Remove 34* 21 50 17 5 13 5 18 13 20 27 30 2* 3* 5* 7* 8* 14* 16* 18* 19* 20* 21* 22* 24* 27* 29* 33* 34*