Vous êtes sur la page 1sur 42

Estructura de Datos

rboles B G. A. Salinas A.

rboles B
1. 2. 3. 4. 5. Introduccin Definicin Bsqueda Insercin, Eliminacin. B+

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

1. Introduccin
ARBOLES MULTICAMINO En general se denomina RBOLES MULTICAMINO a aquellos rboles de grado mayor a dos. Son muy utilizados en la construccin y mantenimiento de rboles de bsqueda de gran cantidad de nodos, usualmente almacenados en MEMORIA SECUNDARIA. El mas elemental de este tipo de rboles son los rboles B.

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

2. Definicin
Los RBOLES B, rboles de bsqueda, se basan en el criterio de crecimiento de BAYERN-McCREIGHT y se define de la siguiente forma: Un rbol B de orden (grado) n es aquel rbol de bsqueda que satisface las siguientes propiedades: 1. Cada pgina contiene como mximo 2n llaves 2. Cada pgina contiene como mnimo n llaves, excepto la raz que puede contener una sola llave 3. Cada pagina, es una pagina de hoja o tiene m+1 descendientes. Donde m es el nmero de llaves en esta pagina 4. Todas las paginas de hoja aparecen al mismo nivel
UNMSM-FISI EDI B-TREE G. A. Salinas A.

2. rbol B de orden 2
Pagina: 2 n = 2*2 = 4 llaves
15 28 45

Raz: 1 llave
55 70

16

17

21

23

32

44

No Hoja tienen m+1 descendientes Nivel 1: m+1=1+1 = 2 Nivel 2: m+1=2+1 = 3


UNMSM-FISI

46

49

52

57

65

68

71

82

87

98

Las pginas HOJA deben aparecer en el mismo nivel


EDI B-TREE G. A. Salinas A.

3. Bsqueda
Es lo mas habitual en los rboles de bsqueda. Los rboles B disponen de paginas y se representa con m llaves y m + 1 apuntadores.

K1

K2

K3

Km-1

Km

.
Llaves

P0

P1

P2

Pm-2

Pm-1

Pm

Apuntadores
UNMSM-FISI EDI B-TREE G. A. Salinas A.

4. Insercin
Se tiene un rbol B vaco, insertar los siguientes elementos: 30, 60, 45, 8, 22, 35, 4, 28, 52, 33 A.
30

B.
30 60

C.
30 45 60

D.
8 30 45 60

22

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Insercin
Se tiene un rbol B vaco, insertar los siguientes elementos: 30, 60, 45, 8, 22, 35, 4, 28, 52, 33 E.
30

22

45 60

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Insercin
Se tiene un rbol B vaco, insertar los siguientes elementos: 30, 60, 45, 8, 22, 35, 4, 28, 52, 33 F.
30

22 28

35 45 52 60

33

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Insercin
Se tiene un rbol B vaco, insertar los siguientes elementos: 30, 60, 45, 8, 22, 35, 4, 28, 52, 33, 13, 39, 41, 43, 24, 25, 15 G.
30 45

22 28

33 35

52 60

Contine insertando ...


UNMSM-FISI EDI B-TREE G. A. Salinas A.

4. Insercin
Se tiene un rbol B vaco, insertar los siguientes elementos: 30, 60, 45, 8, 22, 35, 4, 28, 52, 33, 13, 39, 41, 43, 24, 25, 15 G.
30 45

22 28

33 35

52 60

13

Contine insertando ...


UNMSM-FISI EDI B-TREE G. A. Salinas A.

4. Insercin
Se tiene un rbol B vaco, insertar los siguientes elementos: 30, 60, 45, 8, 22, 35, 4, 28, 52, 33, 13, 39, 41, 43, 24, 25, 15 H.
13 30 45

22 28

33 35

52 60

Contine insertando ...


UNMSM-FISI EDI B-TREE G. A. Salinas A.

4. Insercin
Se tiene un rbol B vaco, insertar los siguientes elementos:

30, 60, 45, 8, 22, 35, 4, 28, 52, 33, 13, 39, 41, 43, 24, 25, 15
H.
13 30 45

22 28

33 35 39 41

52 60

43

Contine insertando ...


UNMSM-FISI EDI B-TREE G. A. Salinas A.

4. Insercin
Se tiene un rbol B vaco, insertar los siguientes elementos: 30, 60, 45, 8, 22, 35, 4, 28, 52, 33, 13, 39, 41, 43, 24, 25, 15 I.
13 30 39 45

22 28

33 35 41 43

52 60

Cuatro llaves, debe tener m+1 hojas (4 +1)


UNMSM-FISI EDI B-TREE

Contine insertando ...


G. A. Salinas A.

4. Insercin
Se tiene un rbol B vaco, insertar los siguientes elementos:

30, 60, 45, 8, 22, 35, 4, 28, 52, 33, 13, 39, 41, 43, 24, 25, 15
I.
13 30 39 45

22 28

33 35

41 43

52 60

Contine insertando ...


UNMSM-FISI EDI B-TREE G. A. Salinas A.

4. Insercin
Se tiene un rbol B vaco, insertar los siguientes elementos: 30, 60, 45, 8, 22, 35, 4, 28, 52, 33, 13, 39, 41, 43, 24, 25, 15 I.
13 30 39 45

22 24 25 28

33 35

41 43

52 60

15

Contine insertando ...


UNMSM-FISI EDI B-TREE G. A. Salinas A.

4. Insercin
Se tiene un rbol B vaco, insertar los siguientes elementos: 30, 60, 45, 8, 22, 35, 4, 28, 52, 33, 13, 39, 41, 43, 24, 25, 15 I.
13 30 39 45

24

15 22 25 28

33 35

41 43

52 60

Contine insertando ...


UNMSM-FISI EDI B-TREE G. A. Salinas A.

4. Insercin
Se tiene un rbol B vaco, insertar los siguientes elementos: 30, 60, 45, 8, 22, 35, 4, 28, 52, 33, 13, 39, 41, 43, 24, 25, 15 J.
30

13 24

39 45

33 35

41 43

52 60

8
UNMSM-FISI

15 22

25 28
EDI B-TREE G. A. Salinas A.

Eliminacin
En rboles B de orden 2 es similar a la de todo rbol de bsqueda, una vez localizado el elemento a eliminar pueden darse dos casos:

1. El elemento a suprimir se encuentra en una pagina hoja, luego la eliminacin es directa. 2. El elemento a suprimir no se encuentra en una pagina hoja, en este caso la estrategia es similar a la desarrollada en la eliminacin en rboles binarios de bsqueda (ABB). Esto es, se tomara el elemento de ms a la derecha de la pgina hoja de subrbol izquierdo, o el de ms a la izquierda de la pgina hoja del subrbol derecho.
UNMSM-FISI EDI B-TREE G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 30
30

13 24

39 45

33 35

41 43

52 60

8
UNMSM-FISI

15 22

25 28
EDI B-TREE G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 30 G.
30

13 24

39 45

33 35

41 43

52 60

8
UNMSM-FISI

15 22

25 28
EDI B-TREE G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 30 G.
28

Se sustituye el mayor de los menores

13 24

39 45

33 35

41 43

52 60

8
UNMSM-FISI

15 22

25
EDI B-TREE G. A. Salinas A.

Viola las condiciones de un rbol B

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 30 G.
28

13 24

39 45

33 35

41 43

52 60

8
UNMSM-FISI

15 22

25
EDI B-TREE G. A. Salinas A.

Viola las condiciones de un rbol B

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 30 G.
28

13

39 45

33 35

41 43

52 60

8
UNMSM-FISI

15 22 24 25
EDI B-TREE G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Viola las condiciones de un rbol B

28

13

39 45

15 22 24 25

33 35

41 43

52 60

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Viola las caractersticas de un rbol B

28

13

39 45

15 22 24 25

33 35

41 43

52 60

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos:

13 28 39 45

15 22 24 25

33 35

41 43

52 60

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Cumple condiciones de un rbol B
13 28 39 45

15 22 24 25

33 35

41 43

52 60

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 35

13 28 39 45

15 22 24 25

33 35

41 43

52 60

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 35
13 28 39 45

15 22 24 25

33 35

41 43

52 60

El elemento esta en una pagina hoja. No es necesario sustituirlo


UNMSM-FISI EDI B-TREE G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 35
13 28 39 45

15 22 24 25

33

41 43

52 60

El elemento esta en una pagina hoja. No es necesario sustituirlo


UNMSM-FISI EDI B-TREE

Pero no cumple la condicin de un rbol B


G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 35
13 28 39 45

15 22 24 25

33

41 43

52 60

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 35
13 24 39 45

15 22

25 28 33

41 43

52 60

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Se ha eliminado: 35
13 24 39 45

15 22

25 28 33

41 43

52 60

Cumple condiciones de un rbol B

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 60
13 24 39 45

15 22

25 28 33

41 43

52 60

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 60
13 24 39 45

15 22

25 28 33

41 43

52 60

El elemento esta en una pagina hoja. No es necesario sustituirlo


UNMSM-FISI EDI B-TREE G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 60
13 24 39 45

15 22

25 28 33

41 43

52

Pero no cumple la condicin de un rbol B

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 60
13 24 39 45

15 22

25 28 33

41 43

52

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Eliminar: 60
13 24 39

15 22

25 28 33

41 43 45 52

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

4. Eliminacin
Se tiene un rbol B con los siguientes elementos: Se Elimin: 60
13 24 39

15 22

25 28 33

41 43 45 52

Cumple condiciones de un rbol B

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

5. rboles B+
La principal caracterstica de estos rboles es que todas las claves se encuentran en las hojas.Ocupan mas espacio que los rboles B, pero es aceptable si se modifica continuamente, pues se evita la reorganizacin del rbol que es muy costosa en los rboles B

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

Referencias Bibliogrficas
Cairo Battisttutti, Osvaldo y Guardati Buemo, Silvia. (1994) Estructura de Datos. McGraw-Hill. Mexico D.F.

Joyanes Aguilar, Luis y Zahonero Martnez, Ignacio. (2004) Algoritmos y Estructuras de Datos en C. McGraw-Hill. Madrid.

Goodrich T. Michael y Tamasia, Roberto (2002). Estructura de Datos y Algoritmos en Java. Grupo Patria Cultural. Mexico D. F.

UNMSM-FISI

EDI B-TREE

G. A. Salinas A.

Vous aimerez peut-être aussi