codeVS 3110 二叉查找树做法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了codeVS 3110 二叉查找树做法相关的知识,希望对你有一定的参考价值。

题目描述 Description

     给定N(N≤500,000)和N个整数(较有序),将其排序后输出。

输入描述 Input Description

     N和N个整数

输出描述 Output Description

     N个整数(升序)

样例输入 Sample Input

5

12 11 10 8 9

样例输出 Sample Output

8 9 10 11 12

数据范围及提示 Data Size & Hint

对于33%的数据 N≤10000

对于另外33%的数据 N≤100,000  0≤每个数≤1000

对于100%的数据 N≤500,000  0≤每个数≤2*10^9

没错,很水的一道题,其实用sort就可以过了,数据水。。。但我还是想装一逼

 1 #include<iostream>
 2 using namespace std;
 3 typedef struct Node{
 4     int data;
 5     Node *lchild,*rchild;
 6 }Node,*Tree;
 7 Tree bst=NULL;
 8 int n,a[500001];
 9 void Init_tree(Tree &bst,int k){
10     if(!bst){
11         bst=new Node;
12         bst->data=k;
13         bst->lchild=bst->rchild=NULL;
14     }
15     else{
16         if(k>bst->data)    Init_tree(bst->rchild,k);
17         else    Init_tree(bst->lchild,k);
18     }
19 }
20 void z_sort(Tree &bst){
21     if(bst){
22         z_sort(bst->lchild);
23         cout<<bst->data<<" ";
24         z_sort(bst->rchild);
25     }
26 }
27 int main(){
28     bst=NULL;
29     cin>>n;
30     for(int i=1;i<=n;++i){
31         cin>>a[i];
32         int k=a[i];
33         Init_tree(bst,k);
34     }
35     z_sort(bst);
36     return 0;
37 }

 

 

 

以上是关于codeVS 3110 二叉查找树做法的主要内容,如果未能解决你的问题,请参考以下文章

AC日记——二叉堆练习3 codevs 3110

问题 D: DS查找—二叉树平衡因子(不一样的新做法哦)

二叉查找树简单实现

LeetCode810. 黑板异或游戏/455. 分发饼干/剑指Offer 53 - I. 在排序数组中查找数字 I/53 - II. 0~n-1中缺失的数字/54. 二叉搜索树的第k大节点(代码片段

Codevs 3112 二叉树计数

Codevs 二叉树遍历问题 合集