zoukankan      html  css  js  c++  java
  • 257. 二叉树的所有路径-leetcode

    257. 二叉树的所有路径-leetcode

    257. 二叉树的所有路径-leetcode

    Table of Contents

    2 代码

    /**
     * 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 {
        private $ret = [];
    
        /**
         * @param TreeNode $root
         * @return String[]
         */
        function binaryTreePaths($root) {
        $this->ret = [];
    
        if (empty($root)) {
            return $this->ret;
        }
        $path = $root->val;
        $this->dfs($root, $path, 1);
    
        return $this->ret;
        }
    
        function dfs($root, $path, $isRoot = 0) {
        if (! $isRoot) {
            $path = $path."->".$root->val;
        }
        if (empty($root->left) && empty($root->right)) {
            $this->ret[] = strval($path);
        } 
        if ($root->left) {
            $this->dfs($root->left, $path);
        }
        if ($root->right) {
            $this->dfs($root->right, $path);
        }
        }
    }
    

    3 思路

    深度优先遍历,或者广度优先遍历都可以

    我这里加了一个函数的变量 isRoot,有点冗余,可以通过优化去掉

    ===

    作者: 吴丹阳 https://www.cnblogs.com/wudanyang

    更新时间: 2020-09-01 Tue 13:35

    Emacs 27.1 (Org mode 9.3.7)

    ===

    天行健,君子以自强不息。

    地势坤,君子以厚德载物。

    ===

  • 相关阅读:
    docker 容器使用 systemctl 命令报错
    lxml 这个包和openpyxl 起冲突
    解决GPG error: The following signatures couldn't be verified because the public key is not available
    pyinstaller bug
    PyCharm使用技巧及常用快捷键
    python 软件目录规范
    Wpf canvas 绘图 像素对齐
    wpf ListView 隔行 (各行) 显示 不同 背景 颜色
    C# wpf 获取 数字 类型 所占字节数
    Mybatis-Plus QueryWrapper +sql自定义查询
  • 原文地址:https://www.cnblogs.com/wudanyang/p/13595701.html
Copyright © 2011-2022 走看看