1 条题解

  • 0
    @ 2024-12-25 14:46:07

    中序递归方法:

    #include <bits/stdc++.h>
    using namespace std;
    struct node{
        int val;
        int left;
        int right;
    };
    int n,x;
    int ans;
    vector<node> q;
    void inorder(int k)
    {
        if(q[k].left!=0)
            inorder(q[k].left);
        ans++;
        if(q[k].val==x)
        {
            cout<<ans<<endl;
            return ;
        }
        if(q[k].right!=0)
            inorder(q[k].right);
    }
    int main()
    {
        cin>>n>>x;
        q.resize(n+1);
        for(int i=1;i<=n;i++)
            cin>>q[i].val>>q[i].left>>q[i].right;
        inorder(1);
        return 0;
    }
    
    • 1

    信息

    ID
    845
    时间
    1000ms
    内存
    256MiB
    难度
    9
    标签
    递交数
    11
    已通过
    6
    上传者