輸入的樹形結構字符串格式爲:
1、以父節點、左子樹、右子樹表示的二叉樹;每個父節點不會超過兩個子節點;
2、樹的每一個節點採用單個字母表示;樹的層次採用數字表示,樹根的層次爲1,下一層爲2,不會超過9層;
3、字符串以“節點名稱 層次數 節點名稱 層次數…”的形式出現,同一個父節點下,先出現的爲左子樹。
例如字符串“a1b2c2d3e3f3”生成一棵如下的樹:
a
/ \
b c
/ \ /
d e f
節點a的深度爲3,節點b的深度是2,節點f的深度是1
輸入:一行字符串,表示一個二叉樹。一行字符串,一個字符一個節點,輸入確保字符不會存在重複節點
輸出:指定節點的深度,如果節點不存在,返回0;整數之間用空格隔開
例如:
輸入:a1b2c2d3e3f3
ab
輸出:3 2
//這本來是一道很簡單的二叉樹求深度的算法題,但是因爲這棵樹沒那麼好建,所以不容易做,感覺最好的辦法就是拿出一個vector<node>來建立一顆樹,再申請一個二維數組int[][]來放置節點的孩子信息,然後再用這個二維數組裏的信息來初始化node的左右孩子的位置。