2017小米面接-数の高さ

904 ワード

2017小米面接-数の高さ
今1本の合法的な二叉木があって、木の節点はすべて数字で表して、今この木の上ですべての親子の関係を与えて、この木の高さを求めます
  
             n(1<=n<=1000,      0 n-1)  ,

   n-1 ,       ,            ,            

  
      ,     

    :
5

0 1

0 2

1 3

1 4
    :
3

解法:配列を初期化し、サイズはnで、下付きは各ノードのインデックス値を表します.格納された内容は親ノードを表します.データベース内の無限分類に似ています.各ノードの深さを遍歴して求め,その最大値は数の深さである.
#include 
#include 
#include 

using namespace std;

#define mianShi001 main

int mianShi001(){
    int n;
    cin>>n;
    vector tree(n,-1);
    for(int i=0;i> f_node >> c_node;
        tree[c_node] = f_node;
    }
    int high = 0;
    for(int i=0;i high)
            high = temp;
    }
    cout<