国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

[Leetcode] Binary Tree Right Side View 二叉樹右視圖

hearaway / 2203人閱讀

摘要:代碼層序遍歷復雜度時間空間對于二叉樹思路我們同樣可以借用層序遍歷的思路,只要每次把這一層的最后一個元素取出來就行了,具體代碼參見中的

Binary Tree Right Side View

Given a binary tree, imagine yourself standing on the right side of it, return the values of the nodes you can see ordered from top to bottom.

For example: Given the following binary tree,

   1            <---
 /   
2     3         <---
      
  5     4       <---

You should return [1, 3, 4].

深度優先搜索 復雜度

時間 O(b^(h+1)-1) 空間 O(h) 遞歸棧空間 對于二叉樹b=2

思路

本題實際上是求二叉樹每一層的最后一個節點,我們用DFS先遍歷右子樹并記錄遍歷的深度,如果這個右子節點的深度大于當前所記錄的最大深度,說明它是下一層的最右節點(因為我們先遍歷右邊,所以每一層都是先從最右邊進入),將其加入結果中。

代碼
public class Solution {
    
    int maxdepth = 0;
    List res;
    
    public List rightSideView(TreeNode root) {
        res = new LinkedList();
        if(root!=null) helper(root,1);
        return res;
    }
    
    private void helper(TreeNode root, int depth){
        if(depth>maxdepth){
            maxdepth = depth;
            res.add(root.val);
        }
        if(root.right!=null) helper(root.right, depth+1);
        if(root.left!=null) helper(root.left, depth+1);
    }
    
}
層序遍歷 Level Order Traversal 復雜度

時間 O(b^(h+1)-1) 空間 O(b^h) 對于二叉樹b=2

思路

我們同樣可以借用層序遍歷的思路,只要每次把這一層的最后一個元素取出來就行了,具體代碼參見Binary Tree Traversal中的Binary Tree Level Order Traversal

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/64469.html

相關文章

  • LeetCode 精選TOP面試題【51 ~ 100】

    摘要:有效三角形的個數雙指針最暴力的方法應該是三重循環枚舉三個數字。總結本題和三數之和很像,都是三個數加和為某一個值。所以我們可以使用歸并排序來解決這個問題。注意因為歸并排序需要遞歸,所以空間復雜度為 ...

    Clect 評論0 收藏0
  • [Leetcode] Binary Tree Paths 叉樹路徑

    摘要:遞歸法復雜度時間空間遞歸棧空間對于二叉樹思路簡單的二叉樹遍歷,遍歷的過程中記錄之前的路徑,一旦遍歷到葉子節點便將該路徑加入結果中。當遇到最小公共祖先的時候便合并路徑。需要注意的是,我們要單獨處理目標節點自身是最小公共祖先的情況。 Root To Leaf Binary Tree Paths Given a binary tree, return all root-to-leaf pat...

    Vicky 評論0 收藏0
  • [Leetcode] Invert Binary Tree 翻轉叉樹

    摘要:原題鏈接遞歸法復雜度時間空間遞歸棧空間思路這個難倒大神的題也是非常經典的一道測試對二叉樹遍歷理解的題。遞歸的終止條件是當遇到空節點或葉子節點時,不再交換,直接返回該節點。代碼給出的是后序遍歷的自下而上的交換,先序遍歷的話就是自上而下的交換。 Invert Binary Tree Invert a binary tree. 4 / 2 7 / ...

    leone 評論0 收藏0
  • LeetCode 104 Maximum Depth of Binary Tree 叉樹最大深度

    LeetCode 104 Maximum Depth of Binary Tree難度:Easy 題目描述:找到一顆二叉樹的最深深度。Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the longest path from the root node down ...

    PiscesYE 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<