Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

сиаод / 1-34 / 34. Обход 2-3 дерева

..pdf
Скачиваний:
72
Добавлен:
11.05.2015
Размер:
257.92 Кб
Скачать

34. Обход 2-3 дерева.

Node2-3Tree = (S, L, Left, Middle, Right)

Обход: Алгоритм InOrder(R)

1.if (R-лист) then

2.Обрабатываем элементы в узле R

3.else if (R – трехместный) then

4.InOrder(R^.left)

5.Обработать первый элемент

6.InOrder(R^.middle)

7.Обработать второй элемент

8.InOrder(R^.right)

9.Обработать третий элемент

10.InOrder(R^.left)

11.Обработать элемент узла

12.InOrder(R^.right)

13.end if

14.end if

Поиск: Алгоритм Retrieve(R, key, elem)

1.1 if (key R) then

2.elem данные, содержащиеся в узле R

3.return true

4.else

5.if (R – лист) then return false

6.else if (R – трехместный) then

7.if (key < R.S) then

8.return Retrieve(R^.left, key, elem)

9.else if ( key < R.L) then

10.return Retrieve (R^.middle, key, elem)

11.else return Retrieve (R^.right, key, elem)

12.end if

13.end if

14.else

15.if (key < R.S) then

16.return Retrieve(R^.left, key, elem)

17.else return Retrieve (R^.right, key, elem)

18.end if

19.end if

20.end if