完全二叉树,序列为x的节点,左孩子序列为2x,右孩子序列为2x+1,根节点序列为1
#include <cstdio>
#include <algorithm>
using namespace std;
int a[1010],CBT[1010],index=0;
int N;
void inorder(int root)
{
if(root>N)return;
inorder(root*2);
CBT[root]=a[index++];
inorder(root*2+1);
}
int main()
{
scanf("%d",&N);
for(int i=0;i<N;i++)
{
scanf("%d",&a[i]);
}
sort(a,a+N);
inorder(1);
for(int i=1;i<=N;i++)
{
printf("%d",CBT[i]);
if(i!=N)
printf(" ");
}
return 0;
}