7-5 平衡二叉树的根 (25分)
将给定的一系列数字插入初始为空的AVL树,请你输出最后生成的AVL树的根结点的值。
输入格式:
输入的第一行给出一个正整数N(≤20),随后一行给出N个不同的整数,其间以空格分隔。
输出格式:
在一行中输出顺序插入上述整数到一棵初始为空的AVL树后,该树的根结点的值。
输入样例1:
5
88 70 61 96 120
输出样例1:
70
输入样例2:
7
88 70 61 96 120 90 65
输出样例2:
88
这个题其实跟6-1原理是一样的
只要在6-1的基础前面加上
#include <stdio.h>
#include <stdlib.h> //malloc用
typedef struct AVLNode *PtrToAVLNode;
typedef AVLNode{
int Key;
PtrToAVLNode Left;
PtrToAVLNode Right;
int Height;
}
typedef AVLNode *AVLTree;
AVLTree Insert ( AVLTree T, int Key );
int main(){
int N, i, Key;
AVLTree T = NULL;
scanf("%d", &N);
for( i = 0 ; i < N ; i++){
scanf("%d", &Key);
T = Insert( T, Key );
}
printf("%d\n", T -> Key);
return 0;
}
也就是定义结构体和读入Key然后调用插入 最后输出根节点的Key就可以了
6-1链接