Vous êtes sur la page 1sur 6

DLSI (Univ.

Alicante)

Tema 3. Tipo rbol

3.3. rboles 2-3


DEFINICIONES Un rbol 2-3 es un rbol que est vaco o satisface las siguientes propiedades:
Los nodos pueden tener 2 3 hijos (2-nodo 3-nodo) Cumple las propiedades de rbol multicamino de bsqueda Todas las hojas estn en el mismo nivel

Representacin
TNodo23
ItemIz ItemDe

class TArb23 { public: ..... private: TNodo23 * farb; };

HijoIz

HijoMed

HijoDe

TNodo23 *

DLSI (Univ. Alicante)

Tema 3. Tipo rbol

3.3. rboles 2-3


OPERACIONES BSICAS. PROPIEDADES Operaciones bsicas:
Bsqueda (similar a los rboles multicamino de bsqueda) Insercin (se realiza en las hojas. Se pueden producir reestructuraciones del rbol en el camino de vuelta) Borrado (se realiza en las hojas. Se pueden producir reestructuraciones del rbol en el camino de vuelta)

Propiedades:
En un rbol 2-3 de altura h tenemos: 2h - 1 elementos si todos los nodos son del tipo 2-nodo 3h - 1 elementos si todos los nodos son del tipo 3-nodo por lo que la altura de un rbol 2-3 con n elementos se encuentra entre los lmites: log3 (n+1) y log2 (n+1) Las reestructuraciones se realizan desde las hojas hacia la raz

DLSI (Univ. Alicante)

Tema 3. Tipo rbol

3.3. rboles 2-3


OPERACIONES BSICAS. INSERCIN (I) Pueden ocurrir dos casos:
El elemento a insertar ir en un 2-nodo: INSERCION DIRECTA El elemento a insertar ir en un 3-nodo: HAY QUE CREAR UN NUEVO NODO

DLSI (Univ. Alicante)

Tema 3. Tipo rbol

3.3. rboles 2-3


OPERACIONES BSICAS. INSERCIN (II)
Ejemplo: Insertar en el siguiente rbol 2-3 los elementos: 80, 40 y 70
A ---

50

50

80
B 15 30 90 C --

B 15 30 80

40
C 90

G
A 30 50

50

--

40
B 15 -40 D -80 C 90

70

A 30 -80

F --

B 15 40

D 70

C 90

DLSI (Univ. Alicante)

Tema 3. Tipo rbol

3.3. rboles 2-3


EJERCICIOS insercin 1) En el rbol 2-3 obtenido anteriormente, insertar los elementos 45, 47, 35, 33, 48, 49, 43 y 42

DLSI (Univ. Alicante)

Tema 3. Tipo rbol

3.3. rboles 2-3


EJERCICIOS insercin 2) En un rbol 2-3 inicialmente vaco, insertar los elementos 20, 35, 50, 43, 12, 22, 13, 14, 52, 37, 41, 18, 19 y 1

DLSI (Univ. Alicante)

Tema 3. Tipo rbol

3.3. rboles 2-3


OPERACIONES BSICAS. BORRADO (I) Pueden ocurrir dos casos:
El elemento a borrar est en un 3-nodo: BORRADO DIRECTO El elemento a insertar ir en un 2-nodo: realizar una COMBINACIN o ROTACIN
BORRADO 50 sust. mayor izqda
B C 60 70 90 D 95 A 20 80

50

80

10

B 10 20 60

C 70 90

D 95
A 60 80

BORRADO 50 sust. menor dcha


B 10

C 20 70 90

D 95

DLSI (Univ. Alicante)

Tema 3. Tipo rbol

3.3. rboles 2-3


OPERACIONES BSICAS. BORRADO (II)
Ejemplo: Borrar en el siguiente rbol 2-3 los elementos: 70, 90, 60, 95, 50 y 10. (Criterios: (1) si el nodo tiene dos hijos hay que sustituir por el mayor de la izquierda, (2) si el 2-nodo tiene dos hermanos, consultar el hermano de la izquierda)
70
A 50 80
A 50 80

90

B 10 20 60

C 70 90

D 95
10

B 20 60

C -90

D 95

90

50

80

60 ROTACIN

20

80

95 COMBINACIN D
-95

B 10 20 60

C -95

B 10 50

DLSI (Univ. Alicante)

Tema 3. Tipo rbol

3.3. rboles 2-3


OPERACIONES BSICAS. BORRADO (III)

95
A 20 --

50

20

--

COMBINACIN
B 10 -50 C 80
10 B -80 C --

10 COMBINACIN
A 20 80

DLSI (Univ. Alicante)

Tema 3. Tipo rbol

3.3. rboles 2-3


EJERCICIOS borrado 1) Dado el siguiente rbol 2-3 borrar los elementos 10, 7 y 18. (Criterios: (1) si el nodo tiene dos hijos hay que sustituir por el menor de la derecha, (2) si el 2nodo tiene dos hermanos, consultar el hermano de la derecha)
10 --

--

16

--

--

--

12

--

18

19

10

DLSI (Univ. Alicante)

Tema 3. Tipo rbol

3.3. rboles 2-3


EJERCICIOS borrado 2) Dado el siguiente rbol 2-3 borrar los elementos 20, 30, 70 y 12. (Criterios: (1) si el nodo tiene dos hijos hay que sustituir por el menor de la derecha, (2) si el 2nodo tiene dos hermanos, consultar el hermano de la derecha)
20 40

12

30

60 70

15

25

35

50 55 38 52

65

80

13

16

22

27

32

45

56

62

66

75

85

11

Vous aimerez peut-être aussi