SlideShare une entreprise Scribd logo
1  sur  28
Faculdade de Ciências Humanas, Saúde, Exatas
e Jurídicas de Teresina
Turma: Ciência da Computação
Período: 4º - Manhã
Disciplina: Pesquisa e Ordenação
Docente: Willame Pereira
Discentes: Igor Monteiro
Luis Fellipe
Marcelo Kelle
Copyright 2013.1
1. Overview;
2. Armazenamento Secundário;
3. Definição da Árvore-B.
Copyright 2013.1
 São árvores balanceadas, desenvolvidas para otimizar o acesso a
armazenamento secundário
 Os nós da árvore B podem ter muitos filhos. Esse fator de
ramificação é determinante para reduzir o número de acessos a
disco. Árvores B são balanceadas, ou seja, sua altura é O(lg(n))
 Árvores B são generalizações de árvores binárias balanceadas
3
 Atualmente o armazenamento estável é feito em discos
magnéticos, e o custo de cada acesso (da ordem de milisegundos)
é muito alto quando comparado ao acesso à memória RAM
(ordem de nano segundos)
 Toda vez que um acesso é feito, deve-se aproveita-lo da melhor
maneira possível, trazendo o máximo de informação relevante
 A quantidade de dados utilizados numa árvore B obviamente não
cabem na memória de uma só vez, por isso é necessário paginá-la
 Especializações são feitas de acordo com as necessidades da
aplicação. O fator de ramificação, por exemplo, pode variar de 3 a
2048 por exemplo (dependendo do buffer dos discos e do
tamanho das páginas de memória alocados pelo SO)
4
 Atualmente o armazenamento estável é feito em discos
magnéticos, e o custo de cada acesso (da ordem de
milissegundos) é muito alto quando comparado ao acesso à
memória RAM (ordem de nano segundos)
 Toda vez que um acesso é feito, deve-se aproveita-lo da melhor
maneira possível, trazendo o máximo de informação relevante
 A quantidade de dados utilizados numa árvore B obviamente não
cabem na memória de uma só vez, por isso é necessário paginá-la
 Especializações são feitas de acordo com as necessidades da
aplicação. O fator de ramificação, por exemplo, pode variar de 3 a
2048 por exemplo (dependendo do buffer dos discos e do
tamanho das páginas de memória alocados pelo SO)
5
 Na grande maioria dos sistemas, o tempo de execução de um
algoritmo de árvore B é determinado pelas leituras e escritas no
disco
 Um fator de ramificação alto reduz drasticamente a altura da
árvore. Tomemos o exemplo:
6
 Consideraremos que o os dados dos registros sejam guardados
junto com a chave da árvore. Se estivéssemos usando uma árvore
B+, os registros ficariam todos nas folhas:
7
8
9
10
4. Busca por Elemento;
5. Inserção de Elemento;
6. Separação de Nós.
Copyright 2013.1
 A busca em uma árvore-B é similar à busca em uma árvore
binária, só que ao invés de uma bifurcação em cada nó, temos
vários caminhos a seguir de acordo com o número de filhos do nó
 O algoritmo de busca na árvore é uma generalização da busca em
uma árvore binária
 A função B-TREE-SEARCH recebe o apontador para o nó raiz (x) e
a chave k sendo procurada
 Se a chave k pertencer à árvore o algoritmo retorna o nó ao qual
ela pertence e o índice dentro do nó correspondente à chave
procurada, caso contrário, retorna NIL
12
13
14
 A inserção nas árvores-B são relativamente mais complicadas,
pois precisamos inserir a nova chave no nó correto da árvore, sem
violar suas propriedades
 Como proceder se o nó estiver cheio?
 Caso o nó esteja cheio, devemos separar (split) o nó ao redor do
elemento mediano, criando 2 novos nós que não violam as
definições da árvore
 O elemento mediano é promovido, passando a fazer parte do nó
pai daquele nó
 A inserção é feita em um único percurso na árvore, a partir da raiz
até uma das folhas
15
16
17
7. Inserção com Split;
8. Remoção de Chaves;
9. Complexidade da remoção.
Copyright 2013.1
 Dessa maneira, em uma única passagem pela árvore, da raiz às
folhas, inserimos uma determinada chave, dividindo (splits)
cada nó da árvore que encontrarmos no caminho, caso o nó esteja
cheio
 O código a seguir faz uso de B-TREE-INSERT-NONFULL:
19
B-TREE-INSERT(T, k)
1. r ← root[T]
2. if n[r] = 2t−1 then
3. s ← ALLOCATE-NODE()
4. root[T] ← s
5. leaf [s] ← FALSE
6. n[s] ← 0
7. c1[s] ← r
8. B-TREE-SPLIT-CHILD(s, 1, r)
9. B-TREE-INSERT-NONFULL(s, k)
10. else B-TREE-INSERT-NONFULL(r, k)
 B-TREE-INSERT-NONFULL insere a chave k no nó x, caso este seja
uma folha, caso contrário, procura o filho adequado e desce à ele
recursivamente até encontrar a folha onde deve inserir k
20
21
22
 A remoção de uma chave é análoga à inserção, porém com alguns
complicadores, já que uma chave pode ser removida de qualquer
nó, seja ele raiz ou não
 Assim como na inserção, precisamos garantir que, ao removermos a
chave as propriedades da árvore-B não sejam violadas
 Da mesma maneira que tivemos de garantir que um nó não se
tornasse grande demais na inserção, devemos garantir que ele não
torne-se pequeno demais, ou seja, deve sempre ter pelo menos t-1
elementos
 Sendo assim, seguiremos para os casos de remoção de chaves
 Existem 6 casos possíveis para a remoção de uma chave de uma
árvore-B:
 Caso 1: Se a chave k estiver numa folha da árvore e a folha possui
pelo menos t chaves, remove-se a chave da árvore
23
 Caso 2: Se a chave k está num nó interno x o seguinte deve ser feito:
a) Se o filho y que precede k no nó x possui pelo menos t
chaves, encontre o predecessor k′ de k na sub-árvore com raiz
em y. Remova k′ do nó filho e substitua k por k′ no nó atual
b) Simetricamente, se o filho z que sucede k no nó x possui pelo
menos t chaves, encontre o sucessor k′ de k na sub-árvore com
raiz em z. Remova k′ do nó filho e substitua k por k′ no nó atual
Se a chave k está num nó interno x o seguinte deve ser feito:
c) Caso ambos y e z possuem somente t-1 chaves, copie todos os
elementos de z em y , libere a memória ocupada por z e remova
o apontador em x e remova k de x.
24
25
26
27
Faculdade de Ciências Humanas, Saúde, Exatas
e Jurídicas de Teresina
Referência:
CORMEN, Thomas H.; LEISERSON, Charles E.;
RIVEST, Ronald L.; STEIN, Clifford. Algoritmos: Teoria e
Prática. 2 ed. Editora Campus, São Paulo. 2002.
Discentes: Igor Monteiro kijigor@hotmail.com
Luis Fellipe fellipecastro13@hotmail.com
Marcelo Kelle marcelo_kcs@hotmail.com
Copyright 2013.1

Contenu connexe

Tendances

Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Leinylson Fontinele
 
Bancos de dados e usuários de banco de dados
Bancos de dados e usuários de banco de dadosBancos de dados e usuários de banco de dados
Bancos de dados e usuários de banco de dadosElaine Cecília Gatto
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidosGleydson Sousa
 
Banco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - ApresentaçãoBanco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - ApresentaçãoLeinylson Fontinele
 
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de DadosBanco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de DadosLeinylson Fontinele
 
Banco de Dados - Part01
Banco de Dados - Part01Banco de Dados - Part01
Banco de Dados - Part01Rangel Javier
 
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Leinylson Fontinele
 
Introdução a modelagem de dados - Banco de Dados
Introdução a modelagem de dados - Banco de DadosIntrodução a modelagem de dados - Banco de Dados
Introdução a modelagem de dados - Banco de Dadosinfo_cimol
 
Banco de Dados I Aula 02 - Introdução aos Bancos de Dados
Banco de Dados I  Aula 02 - Introdução aos Bancos de DadosBanco de Dados I  Aula 02 - Introdução aos Bancos de Dados
Banco de Dados I Aula 02 - Introdução aos Bancos de DadosLeinylson Fontinele
 
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...Leinylson Fontinele
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Leinylson Fontinele
 
Algoritmos de ordenação
Algoritmos de ordenaçãoAlgoritmos de ordenação
Algoritmos de ordenaçãoJonas Mendonça
 
Estruturas de Dados - Tabelas de Espalhamento (Hash Table)
Estruturas de Dados - Tabelas de Espalhamento (Hash Table)Estruturas de Dados - Tabelas de Espalhamento (Hash Table)
Estruturas de Dados - Tabelas de Espalhamento (Hash Table)Erick Petrucelli
 
Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoLeinylson Fontinele
 
Bdm aula 5 - construindo modelos er e mapeamento er-relacional
Bdm   aula 5 - construindo modelos er e mapeamento er-relacionalBdm   aula 5 - construindo modelos er e mapeamento er-relacional
Bdm aula 5 - construindo modelos er e mapeamento er-relacionalTicianne Darin
 

Tendances (20)

Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
 
Bancos de dados e usuários de banco de dados
Bancos de dados e usuários de banco de dadosBancos de dados e usuários de banco de dados
Bancos de dados e usuários de banco de dados
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
 
Aula 4 banco de dados
Aula 4   banco de dados Aula 4   banco de dados
Aula 4 banco de dados
 
Banco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - ApresentaçãoBanco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - Apresentação
 
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de DadosBanco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
 
Banco de Dados - Part01
Banco de Dados - Part01Banco de Dados - Part01
Banco de Dados - Part01
 
Modelos de base de dados
Modelos de base de dadosModelos de base de dados
Modelos de base de dados
 
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Banco de Dados II  Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
 
Introdução a modelagem de dados - Banco de Dados
Introdução a modelagem de dados - Banco de DadosIntrodução a modelagem de dados - Banco de Dados
Introdução a modelagem de dados - Banco de Dados
 
Banco de Dados I Aula 02 - Introdução aos Bancos de Dados
Banco de Dados I  Aula 02 - Introdução aos Bancos de DadosBanco de Dados I  Aula 02 - Introdução aos Bancos de Dados
Banco de Dados I Aula 02 - Introdução aos Bancos de Dados
 
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
Banco de Dados II Aula 05 - Modelagem de Dados (Normalização de dados e as fo...
 
6 estruturas de dados heterogêneas
6  estruturas de dados heterogêneas6  estruturas de dados heterogêneas
6 estruturas de dados heterogêneas
 
Aula 9 banco de dados
Aula 9   banco de dadosAula 9   banco de dados
Aula 9 banco de dados
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
 
Algoritmos de ordenação
Algoritmos de ordenaçãoAlgoritmos de ordenação
Algoritmos de ordenação
 
Estruturas de Dados - Tabelas de Espalhamento (Hash Table)
Estruturas de Dados - Tabelas de Espalhamento (Hash Table)Estruturas de Dados - Tabelas de Espalhamento (Hash Table)
Estruturas de Dados - Tabelas de Espalhamento (Hash Table)
 
Apresentação data mining
Apresentação data miningApresentação data mining
Apresentação data mining
 
Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e Especialização
 
Bdm aula 5 - construindo modelos er e mapeamento er-relacional
Bdm   aula 5 - construindo modelos er e mapeamento er-relacionalBdm   aula 5 - construindo modelos er e mapeamento er-relacional
Bdm aula 5 - construindo modelos er e mapeamento er-relacional
 

En vedette

EDII14 [2012.1] Árvores B e B+
EDII14 [2012.1]   Árvores B e B+EDII14 [2012.1]   Árvores B e B+
EDII14 [2012.1] Árvores B e B+KianeLedok
 
Sistema de arquivos
Sistema de arquivosSistema de arquivos
Sistema de arquivosVirgínia
 
Aula 07 disco rígido e mídias de armazenamento
Aula 07   disco rígido e mídias de armazenamentoAula 07   disco rígido e mídias de armazenamento
Aula 07 disco rígido e mídias de armazenamentoLeewan Meneses
 
Armazenamento de dados Sistema de Informacao
Armazenamento de dados   Sistema de InformacaoArmazenamento de dados   Sistema de Informacao
Armazenamento de dados Sistema de InformacaoJefferson Martins
 
Sistemas de arquivos cap 04 (iii unidade)
Sistemas de arquivos cap 04 (iii unidade)Sistemas de arquivos cap 04 (iii unidade)
Sistemas de arquivos cap 04 (iii unidade)Faculdade Mater Christi
 
Dispositivo de armazenamento de dados
Dispositivo de armazenamento de dadosDispositivo de armazenamento de dados
Dispositivo de armazenamento de dadosFilipe Simão Kembo
 
A evolução dos dispositivos de armazenamento
A evolução dos dispositivos de armazenamentoA evolução dos dispositivos de armazenamento
A evolução dos dispositivos de armazenamentoNuno Pereira
 
Dispositivos de armazenamento
Dispositivos de armazenamentoDispositivos de armazenamento
Dispositivos de armazenamentofelipefaleiro
 
TECNOLOGIAS DE ARMAZENAMENTO DE INFORMAÇÃO
TECNOLOGIAS DE ARMAZENAMENTO DE INFORMAÇÃOTECNOLOGIAS DE ARMAZENAMENTO DE INFORMAÇÃO
TECNOLOGIAS DE ARMAZENAMENTO DE INFORMAÇÃORenan Souza Daniel
 
MC - Aula 05 - Memória e Dispositivos de Armazenamento
MC - Aula 05 - Memória e Dispositivos de ArmazenamentoMC - Aula 05 - Memória e Dispositivos de Armazenamento
MC - Aula 05 - Memória e Dispositivos de ArmazenamentoFelipe J. R. Vieira
 
Dispositivos de armazenamento
Dispositivos de armazenamentoDispositivos de armazenamento
Dispositivos de armazenamentoVinicius Buffolo
 
Aula 4 (tecnologias de armazenamento)
Aula 4 (tecnologias de armazenamento)Aula 4 (tecnologias de armazenamento)
Aula 4 (tecnologias de armazenamento)Evandro Júnior
 
Dispositivos e Periféricos de Armazenamento: Pen Drives e Cartões de Memória
Dispositivos e Periféricos de Armazenamento: Pen Drives e Cartões de MemóriaDispositivos e Periféricos de Armazenamento: Pen Drives e Cartões de Memória
Dispositivos e Periféricos de Armazenamento: Pen Drives e Cartões de MemóriaSara Coelho
 
Apostila 8 sistema de arquivos
Apostila 8   sistema de arquivosApostila 8   sistema de arquivos
Apostila 8 sistema de arquivosPaulo Fonseca
 

En vedette (20)

EDII14 [2012.1] Árvores B e B+
EDII14 [2012.1]   Árvores B e B+EDII14 [2012.1]   Árvores B e B+
EDII14 [2012.1] Árvores B e B+
 
Sistema de arquivos
Sistema de arquivosSistema de arquivos
Sistema de arquivos
 
Sd01 (si) sistemas de arquivos
Sd01 (si)   sistemas de arquivosSd01 (si)   sistemas de arquivos
Sd01 (si) sistemas de arquivos
 
Aula 07 disco rígido e mídias de armazenamento
Aula 07   disco rígido e mídias de armazenamentoAula 07   disco rígido e mídias de armazenamento
Aula 07 disco rígido e mídias de armazenamento
 
Arvores
ArvoresArvores
Arvores
 
Armazenamento de dados Sistema de Informacao
Armazenamento de dados   Sistema de InformacaoArmazenamento de dados   Sistema de Informacao
Armazenamento de dados Sistema de Informacao
 
Sistemas de arquivos cap 04 (iii unidade)
Sistemas de arquivos cap 04 (iii unidade)Sistemas de arquivos cap 04 (iii unidade)
Sistemas de arquivos cap 04 (iii unidade)
 
Dispositivo de armazenamento de dados
Dispositivo de armazenamento de dadosDispositivo de armazenamento de dados
Dispositivo de armazenamento de dados
 
A evolução dos dispositivos de armazenamento
A evolução dos dispositivos de armazenamentoA evolução dos dispositivos de armazenamento
A evolução dos dispositivos de armazenamento
 
Dispositivos de armazenamento
Dispositivos de armazenamentoDispositivos de armazenamento
Dispositivos de armazenamento
 
Meios de armazenamento
Meios de armazenamentoMeios de armazenamento
Meios de armazenamento
 
TECNOLOGIAS DE ARMAZENAMENTO DE INFORMAÇÃO
TECNOLOGIAS DE ARMAZENAMENTO DE INFORMAÇÃOTECNOLOGIAS DE ARMAZENAMENTO DE INFORMAÇÃO
TECNOLOGIAS DE ARMAZENAMENTO DE INFORMAÇÃO
 
MC - Aula 05 - Memória e Dispositivos de Armazenamento
MC - Aula 05 - Memória e Dispositivos de ArmazenamentoMC - Aula 05 - Memória e Dispositivos de Armazenamento
MC - Aula 05 - Memória e Dispositivos de Armazenamento
 
Dispositivos de Armazenamento
Dispositivos de ArmazenamentoDispositivos de Armazenamento
Dispositivos de Armazenamento
 
Dispositivos de armazenamento
Dispositivos de armazenamentoDispositivos de armazenamento
Dispositivos de armazenamento
 
Aula 4 (tecnologias de armazenamento)
Aula 4 (tecnologias de armazenamento)Aula 4 (tecnologias de armazenamento)
Aula 4 (tecnologias de armazenamento)
 
Dispositivos e Periféricos de Armazenamento: Pen Drives e Cartões de Memória
Dispositivos e Periféricos de Armazenamento: Pen Drives e Cartões de MemóriaDispositivos e Periféricos de Armazenamento: Pen Drives e Cartões de Memória
Dispositivos e Periféricos de Armazenamento: Pen Drives e Cartões de Memória
 
Apostila 8 sistema de arquivos
Apostila 8   sistema de arquivosApostila 8   sistema de arquivos
Apostila 8 sistema de arquivos
 
Estrutura de dados - Árvores Binárias
Estrutura de dados - Árvores BináriasEstrutura de dados - Árvores Binárias
Estrutura de dados - Árvores Binárias
 
Armazenamento
ArmazenamentoArmazenamento
Armazenamento
 

Plus de Marcelo Carvalho

Rede de Computadores - Cabo Coaxial
Rede de Computadores - Cabo CoaxialRede de Computadores - Cabo Coaxial
Rede de Computadores - Cabo CoaxialMarcelo Carvalho
 
O caixeiro viajante é np completo
O caixeiro viajante é np completoO caixeiro viajante é np completo
O caixeiro viajante é np completoMarcelo Carvalho
 
Ação de um campo magnético sobre cargas elétricas & fontes de campo magnético
Ação de um campo magnético sobre cargas elétricas & fontes de campo magnéticoAção de um campo magnético sobre cargas elétricas & fontes de campo magnético
Ação de um campo magnético sobre cargas elétricas & fontes de campo magnéticoMarcelo Carvalho
 
Reprojeto da organização com sistemas de informação
Reprojeto da organização com sistemas de informaçãoReprojeto da organização com sistemas de informação
Reprojeto da organização com sistemas de informaçãoMarcelo Carvalho
 

Plus de Marcelo Carvalho (6)

Rede de Computadores - Cabo Coaxial
Rede de Computadores - Cabo CoaxialRede de Computadores - Cabo Coaxial
Rede de Computadores - Cabo Coaxial
 
O caixeiro viajante é np completo
O caixeiro viajante é np completoO caixeiro viajante é np completo
O caixeiro viajante é np completo
 
Ação de um campo magnético sobre cargas elétricas & fontes de campo magnético
Ação de um campo magnético sobre cargas elétricas & fontes de campo magnéticoAção de um campo magnético sobre cargas elétricas & fontes de campo magnético
Ação de um campo magnético sobre cargas elétricas & fontes de campo magnético
 
Reprojeto da organização com sistemas de informação
Reprojeto da organização com sistemas de informaçãoReprojeto da organização com sistemas de informação
Reprojeto da organização com sistemas de informação
 
Memória Primária
Memória PrimáriaMemória Primária
Memória Primária
 
A consciência mítica
A consciência míticaA consciência mítica
A consciência mítica
 

Dernier

aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptssuser2b53fe
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...AnaAugustaLagesZuqui
 
Artigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptArtigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptRogrioGonalves41
 
Aula prática JOGO-Regencia-Verbal-e-Nominal.pdf
Aula prática JOGO-Regencia-Verbal-e-Nominal.pdfAula prática JOGO-Regencia-Verbal-e-Nominal.pdf
Aula prática JOGO-Regencia-Verbal-e-Nominal.pdfKarinaSouzaCorreiaAl
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptxJssicaCassiano2
 
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...marcelafinkler
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfTutor de matemática Ícaro
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...MariaCristinaSouzaLe1
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...marcelafinkler
 
Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024Cabiamar
 
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfAutonoma
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxMarcosLemes28
 
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxFlviaGomes64
 
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdfTCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdfamarianegodoi
 
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...DirceuNascimento5
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxLuizHenriquedeAlmeid6
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*Viviane Moreiras
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfcomercial400681
 
Plano de aula Nova Escola períodos simples e composto parte 1.pptx
Plano de aula Nova Escola períodos simples e composto parte 1.pptxPlano de aula Nova Escola períodos simples e composto parte 1.pptx
Plano de aula Nova Escola períodos simples e composto parte 1.pptxPaulaYaraDaasPedro
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxTailsonSantos1
 

Dernier (20)

aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
 
Artigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.pptArtigo Científico - Estrutura e Formatação.ppt
Artigo Científico - Estrutura e Formatação.ppt
 
Aula prática JOGO-Regencia-Verbal-e-Nominal.pdf
Aula prática JOGO-Regencia-Verbal-e-Nominal.pdfAula prática JOGO-Regencia-Verbal-e-Nominal.pdf
Aula prática JOGO-Regencia-Verbal-e-Nominal.pdf
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx
 
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
 
Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024Historia de Portugal - Quarto Ano - 2024
Historia de Portugal - Quarto Ano - 2024
 
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptx
 
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
 
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdfTCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
TCC_MusicaComoLinguagemNaAlfabetização-ARAUJOfranklin-UFBA.pdf
 
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
A Revolução Francesa. Liberdade, Igualdade e Fraternidade são os direitos que...
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
Plano de aula Nova Escola períodos simples e composto parte 1.pptx
Plano de aula Nova Escola períodos simples e composto parte 1.pptxPlano de aula Nova Escola períodos simples e composto parte 1.pptx
Plano de aula Nova Escola períodos simples e composto parte 1.pptx
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
 

Árvore B

  • 1. Faculdade de Ciências Humanas, Saúde, Exatas e Jurídicas de Teresina Turma: Ciência da Computação Período: 4º - Manhã Disciplina: Pesquisa e Ordenação Docente: Willame Pereira Discentes: Igor Monteiro Luis Fellipe Marcelo Kelle Copyright 2013.1
  • 2. 1. Overview; 2. Armazenamento Secundário; 3. Definição da Árvore-B. Copyright 2013.1
  • 3.  São árvores balanceadas, desenvolvidas para otimizar o acesso a armazenamento secundário  Os nós da árvore B podem ter muitos filhos. Esse fator de ramificação é determinante para reduzir o número de acessos a disco. Árvores B são balanceadas, ou seja, sua altura é O(lg(n))  Árvores B são generalizações de árvores binárias balanceadas 3
  • 4.  Atualmente o armazenamento estável é feito em discos magnéticos, e o custo de cada acesso (da ordem de milisegundos) é muito alto quando comparado ao acesso à memória RAM (ordem de nano segundos)  Toda vez que um acesso é feito, deve-se aproveita-lo da melhor maneira possível, trazendo o máximo de informação relevante  A quantidade de dados utilizados numa árvore B obviamente não cabem na memória de uma só vez, por isso é necessário paginá-la  Especializações são feitas de acordo com as necessidades da aplicação. O fator de ramificação, por exemplo, pode variar de 3 a 2048 por exemplo (dependendo do buffer dos discos e do tamanho das páginas de memória alocados pelo SO) 4
  • 5.  Atualmente o armazenamento estável é feito em discos magnéticos, e o custo de cada acesso (da ordem de milissegundos) é muito alto quando comparado ao acesso à memória RAM (ordem de nano segundos)  Toda vez que um acesso é feito, deve-se aproveita-lo da melhor maneira possível, trazendo o máximo de informação relevante  A quantidade de dados utilizados numa árvore B obviamente não cabem na memória de uma só vez, por isso é necessário paginá-la  Especializações são feitas de acordo com as necessidades da aplicação. O fator de ramificação, por exemplo, pode variar de 3 a 2048 por exemplo (dependendo do buffer dos discos e do tamanho das páginas de memória alocados pelo SO) 5
  • 6.  Na grande maioria dos sistemas, o tempo de execução de um algoritmo de árvore B é determinado pelas leituras e escritas no disco  Um fator de ramificação alto reduz drasticamente a altura da árvore. Tomemos o exemplo: 6
  • 7.  Consideraremos que o os dados dos registros sejam guardados junto com a chave da árvore. Se estivéssemos usando uma árvore B+, os registros ficariam todos nas folhas: 7
  • 8. 8
  • 9. 9
  • 10. 10
  • 11. 4. Busca por Elemento; 5. Inserção de Elemento; 6. Separação de Nós. Copyright 2013.1
  • 12.  A busca em uma árvore-B é similar à busca em uma árvore binária, só que ao invés de uma bifurcação em cada nó, temos vários caminhos a seguir de acordo com o número de filhos do nó  O algoritmo de busca na árvore é uma generalização da busca em uma árvore binária  A função B-TREE-SEARCH recebe o apontador para o nó raiz (x) e a chave k sendo procurada  Se a chave k pertencer à árvore o algoritmo retorna o nó ao qual ela pertence e o índice dentro do nó correspondente à chave procurada, caso contrário, retorna NIL 12
  • 13. 13
  • 14. 14
  • 15.  A inserção nas árvores-B são relativamente mais complicadas, pois precisamos inserir a nova chave no nó correto da árvore, sem violar suas propriedades  Como proceder se o nó estiver cheio?  Caso o nó esteja cheio, devemos separar (split) o nó ao redor do elemento mediano, criando 2 novos nós que não violam as definições da árvore  O elemento mediano é promovido, passando a fazer parte do nó pai daquele nó  A inserção é feita em um único percurso na árvore, a partir da raiz até uma das folhas 15
  • 16. 16
  • 17. 17
  • 18. 7. Inserção com Split; 8. Remoção de Chaves; 9. Complexidade da remoção. Copyright 2013.1
  • 19.  Dessa maneira, em uma única passagem pela árvore, da raiz às folhas, inserimos uma determinada chave, dividindo (splits) cada nó da árvore que encontrarmos no caminho, caso o nó esteja cheio  O código a seguir faz uso de B-TREE-INSERT-NONFULL: 19
  • 20. B-TREE-INSERT(T, k) 1. r ← root[T] 2. if n[r] = 2t−1 then 3. s ← ALLOCATE-NODE() 4. root[T] ← s 5. leaf [s] ← FALSE 6. n[s] ← 0 7. c1[s] ← r 8. B-TREE-SPLIT-CHILD(s, 1, r) 9. B-TREE-INSERT-NONFULL(s, k) 10. else B-TREE-INSERT-NONFULL(r, k)  B-TREE-INSERT-NONFULL insere a chave k no nó x, caso este seja uma folha, caso contrário, procura o filho adequado e desce à ele recursivamente até encontrar a folha onde deve inserir k 20
  • 21. 21
  • 22. 22
  • 23.  A remoção de uma chave é análoga à inserção, porém com alguns complicadores, já que uma chave pode ser removida de qualquer nó, seja ele raiz ou não  Assim como na inserção, precisamos garantir que, ao removermos a chave as propriedades da árvore-B não sejam violadas  Da mesma maneira que tivemos de garantir que um nó não se tornasse grande demais na inserção, devemos garantir que ele não torne-se pequeno demais, ou seja, deve sempre ter pelo menos t-1 elementos  Sendo assim, seguiremos para os casos de remoção de chaves  Existem 6 casos possíveis para a remoção de uma chave de uma árvore-B:  Caso 1: Se a chave k estiver numa folha da árvore e a folha possui pelo menos t chaves, remove-se a chave da árvore 23
  • 24.  Caso 2: Se a chave k está num nó interno x o seguinte deve ser feito: a) Se o filho y que precede k no nó x possui pelo menos t chaves, encontre o predecessor k′ de k na sub-árvore com raiz em y. Remova k′ do nó filho e substitua k por k′ no nó atual b) Simetricamente, se o filho z que sucede k no nó x possui pelo menos t chaves, encontre o sucessor k′ de k na sub-árvore com raiz em z. Remova k′ do nó filho e substitua k por k′ no nó atual Se a chave k está num nó interno x o seguinte deve ser feito: c) Caso ambos y e z possuem somente t-1 chaves, copie todos os elementos de z em y , libere a memória ocupada por z e remova o apontador em x e remova k de x. 24
  • 25. 25
  • 26. 26
  • 27. 27
  • 28. Faculdade de Ciências Humanas, Saúde, Exatas e Jurídicas de Teresina Referência: CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L.; STEIN, Clifford. Algoritmos: Teoria e Prática. 2 ed. Editora Campus, São Paulo. 2002. Discentes: Igor Monteiro kijigor@hotmail.com Luis Fellipe fellipecastro13@hotmail.com Marcelo Kelle marcelo_kcs@hotmail.com Copyright 2013.1