【題型總結】求最低公共祖先【未完待續】

同樣是求最低公共祖先的題,在不同的樹的條件下,思路有差別。

對於樹的題,都同時可以同遞歸和非遞歸方法實現。

1.BST

最簡單的類型,詳見:235. Lowest Common Ancestor of a Binary Search Tree

時間O(logn),空間O(1)。

 

2.普通樹,有父節點指針

先分別找到目標節點,再逆向走父節點指針取出路徑,問題轉而求兩個鏈表的第一個公共節點。

時間O(logn),空間O(1)。

 

3.普通樹,無父節點指針

詳見:https://blog.csdn.net/lemonade13/article/details/104481898

法一:找路徑,求兩鏈表第一個公共節點

時間O(n),空間O(logn)。

 

法二:記錄查找狀態,求第一個滿足要求的節點

時間O(n),空間O(1)。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章