练习4.2 平衡二叉树的根 (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
#include<stdio.h>
#include<stdlib.h>
typedef int ElementType;
typedef struct AVLNode* Position;
typedef Position AVLTree;
struct AVLNode{
ElementType Data;
AVLTree Left;
AVLTree Right;
int Height ;
};
int MAX(int a, int b)
{
return a>b?a:b;
}
int GetHeight(AVLTree T);
AVLTree LL(AVLTree A);
AVLTree RR(AVLTree A);
AVLTree LR(AVLTree A);
AVLTree RL(AVLTree A);
AVLTree Insert(AVLTree T, ElementType X);
int main()
{
int N,i,X;
scanf("%d",&N);
AVLTree T = NULL;
for ( i=0 ; i<N ; i++ )
{
scanf("%d",&X);
T = Insert