1102 Invert a Binary Tree(25 分)

注意,层序遍历那个也要是翻转后的

#include
using namespace std;
struct node{
    int left,right;
}a[100];
bool f[100];
int n;
vectorlevel,in;
int convert(string s)
{
    int ans=0;
    if(isdigit(s[0]))
    {
        for(int i=0;iq;
    q.push(root);
    while(!q.empty())
    {
        int front=q.front();
        level.push_back(front);
        q.pop();
        if(a[front].right!=-1)q.push(a[front].right);
        if(a[front].left!=-1)q.push(a[front].left);
    }
}
void show(vectora)
{
    for(int i=0;i>s1>>s2;
        a[i].left=convert(s1);
        if(a[i].left>=0)f[a[i].left]=true;
        a[i].right=convert(s2);
        if(a[i].right>=0)f[a[i].right]=true;
    }
    int root;
    for(int i=0;i

你可能感兴趣的:(1102 Invert a Binary Tree(25 分))