zoukankan      html  css  js  c++  java
  • LeetCode_199.二叉树的右视图

    给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。

    示例:

    输入: [1,2,3,null,5,null,4]
    输出: [1, 3, 4]
    解释:
    
       1            <---
     /   
    2     3         <---
          
      5     4       <---
    

    C#代码

    /**
     * Definition for a binary tree node.
     * public class TreeNode {
     *     public int val;
     *     public TreeNode left;
     *     public TreeNode right;
     *     public TreeNode(int x) { val = x; }
     * }
     */
    public class Solution {
        public IList<int> RightSideView(TreeNode root) {
            IList<int> list = new List<int>();
            if (root == null) return list;
    
            Queue<TreeNode> treeNodes = new Queue<TreeNode>();
            treeNodes.Enqueue(root);
            while (treeNodes.Count > 0)
            {
                int count = treeNodes.Count;
                while (count-- > 0)
                {
                    TreeNode treeNode = treeNodes.Dequeue();
                    if (treeNode.left != null) treeNodes.Enqueue(treeNode.left);
                    if (treeNode.right != null) treeNodes.Enqueue(treeNode.right);
                    if (count == 0) list.Add(treeNode.val);
                }
            }
    
            return list;
        }
    }
    
  • 相关阅读:
    HTML5基础
    错题本
    字符串
    带参的方法
    人际猜拳参考答案:
    用户登录页面——jdbc
    多媒体播放系统案例
    七言
    七言
    表格设计案例
  • 原文地址:https://www.cnblogs.com/fuxuyang/p/14244514.html
Copyright © 2011-2022 走看看