LeetCode题目-199

首页 编程分享 LEET_CODE 正文

leetCode 转载 编程分享 2024-07-04 10:23:04

简介 LeetCode题目-199


✏Leetcode之PHP版题目解析(199. 二叉树的右视图)


✏描述

其实说白了也就是求从二叉树的右边看,你能看到的每一层的值,我是这样理解的。


✏题目实例

✏题目分析

我们需要保存的是每一层最靠近右边的值,使用两个数组,一个数组用来存储最后的结果,另一个当做队列,我们再遍历每层的节点的时候,如果她存在下一层的节点,就需要保存当前结点的下一层结点的值,因为我们访问的过程中,是从左往右遍历的,所以在放置下一层结点的时候,最右边的节点当然在数组的最后,所以每次只需要拿当前数组最后一个结点的值放入到最终节点即可。

 /**
 * Definition for a binary tree node.
 * class TreeNode {
 *     public $val = null;
 *     public $left = null;
 *     public $right = null;
 *     function __construct($value) { $this->val = $value; }
 * }
 */
class Solution {

    /**
     * @param TreeNode $root
     * @return Integer[]
     */
    function rightSideView($root) {
        $res=[];
        $queue=[];
        if(!$root) return $res;
        array_push($queue,$root);
        while(!empty($queue)){
            $res[]=end($queue)->val;
            $size=count($queue);
            for($i=0;$i<$size;$i++){
               $node= array_shift($queue);
               if($node->left) array_push($queue,$node->left);
               if($node->right) array_push($queue,$node->right);
            }
        }
        return $res;
    }
}
    

转载链接:https://leetcode.cn/


Tags:


本篇评论 —— 揽流光,涤眉霜,清露烈酒一口话苍茫。


    声明:参照站内规则,不文明言论将会删除,谢谢合作。


      最新评论




ABOUT ME

Blogger:袅袅牧童 | Arkin

Ido:PHP攻城狮

WeChat:nnmutong

Email:nnmutong@icloud.com

标签云