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

5 практика

.pdf
Скачиваний:
0
Добавлен:
01.12.2023
Размер:
485.22 Кб
Скачать

//вывод потомков и предка элемента scanf("%d", &n1);

node *x = find(&t, n1); if(x==NULL)

{

printf("-");

printf("\n");

}

else

{

if (x->parent != NULL)

{

printf("%d", x->parent->value); printf(" ");

}

else

{

printf("_ ");

}

if(x->left)

{

printf("%d", x->left->value);

31

}

else

{

printf("_");

}

printf(" "); if(x->right)

{

printf("%d", x->right->value);

}

else

{

printf("_");

}

printf("\n");

}

printf("\n");

scanf("%d", &n2); x = find(&t, n2);

if(x==NULL)

{

32

printf("-");

printf("\n");

}

else

{

if (x->parent != NULL)

{

printf("%d", x->parent->value); printf(" ");

}

else

{

printf("_ ");

}

if(x->left)

{

printf("%d", x->left->value);

}

else

{

printf("_");

}

33

printf(" "); if(x->right)

{

printf("%d", x->right->value);

}

else

{

printf("_");

}

printf("\n");

}

printf("\n");

//удаление элемента scanf("%d", &n1); remove_node(&t, n1); print_tree(&t); printf("\n");

//левые вращения node* troot = rootret(&t); if (troot != NULL)

34

{

while (troot->right != NULL)

{

rotate_root_left(&t); troot = rootret(&t);

}

}

printf("\n"); print_tree(&t);

//правые вращения troot = rootret(&t); if(troot != NULL)

{

while (troot->left != NULL)

{

rotate_root_right(&t); troot = rootret(&t);

}

}

printf("\n"); print_tree(&t);

35

printf("\n");

node* k = rootret(&t); print_levelbeztire(k, 1, 1, 0); printf(" "); print_levelbeztire(k, 1, 2, 0); printf("\n");

//кол-во элементов printf("\n"); print_num(&t); printf("\n\n");

//очистка дерева clean(&t);

troot = rootret(&t); print_tree(&t); return 0;

}

36

Соседние файлы в предмете Структуры данных