题意:

输入一个正整数N(<=20),接着输入N个结点的值,依次插入一颗AVL树,输出最终根结点的值。

AAAAAccepted code:

 #define HAVE_STRUCT_TIMESPEC
#include<bits/stdc++.h>
using namespace std;
int a[];
typedef struct node{
int val;
node*left,*right;
};
node*left_rotate(node*root){
node*tamp=root->right;
root->right=tamp->left;
tamp->left=root;
return tamp;
}
node*right_rotate(node*root){
node*tamp=root->left;
root->left=tamp->right;
tamp->right=root;
return tamp;
}
node*left_right(node*root){
root->left=left_rotate(root->left);
return right_rotate(root);
}
node*right_left(node*root){
root->right=right_rotate(root->right);
return left_rotate(root);
}
int get_height(node*root){
if(root==NULL)
return ;
return max(get_height(root->left),get_height(root->right))+;
}
node*inser(node*root,int val){
if(root==NULL){
root=new node();
root->val=val;
root->left=root->right=NULL;
}
else if(val<root->val){
root->left=inser(root->left,val);
if(get_height(root->left)-get_height(root->right)==)
root=val<root->left->val?right_rotate(root):left_right(root);
}
else{
root->right=inser(root->right,val);
if(get_height(root->right)-get_height(root->left)==)
root=val>root->right->val?left_rotate(root):right_left(root);
}
return root;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int n;
cin>>n;
for(int i=;i<=n;++i)
cin>>a[i];
node*ans=NULL;
for(int i=;i<=n;++i)
ans=inser(ans,a[i]);
cout<<ans->val;
return ;
}

最新文章

  1. EF6 CodeFirst+Repository+Ninject+MVC4+EasyUI实践(九)
  2. Macaca-iOS入门那些事
  3. [转]ASP.Net篇之Session与Cookie
  4. JAVA集合小结
  5. 树莓派 安装 php
  6. Java基础知识强化之IO流笔记58:内存操作流
  7. java_method_正则校验
  8. 深入浅出理解python 装饰器
  9. Java中线程的同步问题
  10. Luogu P3254 圆桌问题
  11. MyBatis - 4.动态SQL
  12. CSRF理解和实战
  13. UML和模式应用4:初始阶段(4)--需求制品之用例模型模板示例
  14. Ubuntu下好的PDF阅读器介绍
  15. HEOI2018(九省联考) 题解集合
  16. Little-endian和Big-endian
  17. jQuery 的attr()方法
  18. Thymeleaf使用说明
  19. Marshal.FreeHGlobal 方法 (IntPtr)
  20. 【转】WinForm窗体显示和窗体间传值

热门文章

  1. 如何预测股票分析--自动ARIMA
  2. 安装VMware Tools和设置屏幕
  3. node 连接数据库异常
  4. markdown pic
  5. mybatis的8月29日
  6. 红帽RHCE培训-课程2笔记内容
  7. Missing artifact com.alibaba:dubbo:jar:2.8.4 dubbo编译打包
  8. 我的18vps~
  9. 攻防世界 robots题
  10. Servlet映射细节