博客
关于我
leetcode 543. Diameter of Binary Tree
阅读量:305 次
发布时间:2019-03-04

本文共 608 字,大约阅读时间需要 2 分钟。

题目概述

解题思路

这道题的思路就是:比较树中各个节点的左右子节点长度之和谁最大。通过递归地求解即可实现。时间复杂度可以控制在O(N)。

这道题的重点在于避免多次遍历一棵树。

解法性能

示例代码

class Solution {public:    int depth(TreeNode *root, int &ans)    {        if(root == NULL)            return 0;        int L_depth = 0, R_depth = 0;        if(root->left)            L_depth = 1 + depth(root->left, ans);        if(root->right)            R_depth = 1 + depth(root->right, ans);        ans = max(L_depth + R_depth, ans);                return max(L_depth, R_depth);    }        int diameterOfBinaryTree(TreeNode* root)     {        int res = 0;        depth(root, res);        return res;    }};

 

转载地址:http://zzaq.baihongyu.com/

你可能感兴趣的文章
jQuery练习t271,从0到1
查看>>
jQuery练习t310,从0到1
查看>>
asp.net代码练习 work015 回调技术
查看>>
asp.net代码练习 work016 fileupload文件上传
查看>>
asp.net代码练习 work021 DataReader的使用
查看>>
PHP7.0--如何使用函数的引用
查看>>
Java基础--01--数据类型/方法/数组
查看>>
【JokerのZYNQ7020】LINUX_EMIO_LED。
查看>>
【JokerのZYNQ7020】LINUX_EMIO_BUTTON。
查看>>
vim匹配特定的行并删除
查看>>
读取excel文件错误
查看>>
傅里叶变换的初级理解三
查看>>
F1 score的意义
查看>>
python36+centos7离线安装tensorflow与talib的方法
查看>>
hdf5与hdfs的区别
查看>>
scala运行的方式
查看>>
tf.Session().as_default的作用
查看>>
isnull与isna的区别
查看>>
python自带超参调优包
查看>>
判断python模型是否安装的办法
查看>>