53 二叉樹的下乙個結點

2021-07-11 21:43:57 字數 1034 閱讀 3527

二叉樹的下乙個結點

給定乙個二叉樹和其中的乙個結點,請找出中序遍歷順序的下乙個結點並且返回。注意,樹中的結點不僅包含左右子結點,同時包含指向父結點的指標。

參考《劍指offer上》的解析

using namespace std;

/*struct treelinknode

};*/

class solution

pret = tmp ;

} else if ( pnode -> next != null )

pret = ppar ;

}return pret ;

}};

第二次做,一桿過~:

本題分為三種情況:

1.如果乙個節點有右子樹,那麼它的下乙個節點就是它的右子樹中的最左子節點。也就是說從右子樹出發,一直沿著左子節點的指標,我們就能找到它的下乙個節點;

2.如果乙個節點沒有右子樹,而且節點是它父節點的左子節點,那麼它的下乙個節點就是它的父節點;

3.如果乙個節點既沒有右子樹,並且它還是它父節點的右子節點,我們可以沿著父節點的指標一直向上遍歷,直到找到乙個是它父節點的左子節點的節點,如果這樣的節點存在,那麼這個節點的父節點就是我們要找的下乙個節點;

using namespace std;

/*struct treelinknode

};*/

class solution

pret = pcur ;

} else

pret = pparent ;

}return pret ;

}};

第三次做:

using namespace std;

/*struct treelinknode

};*/

class solution

return pret ;

} else

return pparent ;}}

};

二叉樹的下乙個結點

這幾天由於一些原因沒及時更新部落格,抽時間來寫寫資料結構。這次是去尋找二叉樹的下乙個節點。總體思路最開始依舊是遞迴,但是比較困難,因此還是來畫圖分析。節點有指向父節點的指標next,節點類為 public class treelinknode 中序遍歷是按照 左 根 右 的規律來遍歷的。也就是如果指...

二叉樹的下乙個結點

題目描述 給定乙個二叉樹和其中的乙個結點,請找出中序遍歷順序的下乙個結點並且返回。注意,樹中的結點不僅包含左右子結點,同時包含指向父結點的指標。二叉樹的下乙個結點 author 過路的守望 public class getnextnode 若當前節點有右兒子,則返回右兒子的最左兒子 if node....

二叉樹的下乙個結點

題目描述 給定乙個二叉樹和其中的乙個結點,請找出中序遍歷順序的下乙個結點並且返回。注意,樹中的結點不僅包含左右子結點,同時包含指向父結點的指標。思路 結合圖,我們可發現分成兩大類 1 有右子樹的,那麼下個結點就是右子樹最左邊的點 eg d,b,e,a,c,g 2 沒有右子樹的,也可以分成兩類,a 是...