leetcode 124 【树直径】
2015-06-09 13:55
295 查看
class Solution { public: map<TreeNode*,int>dp1,dp2; int ans; void help(TreeNode*x) { dp1[x]=dp2[x]=x->val; if(x->left) { help(x->left); int tmp=dp1[x->left]+(x->val); //cout<<dp1[x->left]<<" "<<tmp<<endl; if(tmp>dp1[x]) {dp2[x]=dp1[x];dp1[x]=tmp;} else if(tmp>dp2[x]) dp2[x]=tmp; } if(x->right) { help(x->right); int tmp=dp1[x->right]+(x->val); //cout<<dp1[x->right]<<" "<<tmp<<endl; if(tmp>dp1[x]) {dp2[x]=dp1[x];dp1[x]=tmp;} else if(tmp>dp2[x]) dp2[x]=tmp; } ans=max(ans,dp1[x]+dp2[x]-(x->val)); } int maxPathSum(TreeNode* root) { if(!root) return 0; ans=root->val; dp1.clear();dp2.clear(); help(root); return ans; } };
相关文章推荐
- iOS项目的持续集成与管理
- POJ 1316
- Linux下Apache配置局域网访问出现的问题
- 韦老师linux_3.42内核没有配置网卡,已解决
- javascript学习笔记
- Tessellation Overview
- The Direct3D 11 programmable pipeline
- Java多区域部署时能自动升级的一个小演示程序
- Magento使用phpexcel导出 商品订单 /订单条目表sales_flat_order_item
- POJ 1298
- POJ 1287
- POJ 1274
- h264视频编码的MP4格式视频无法在网页中的adobe flash player中播放
- oracle11g分区表
- python 抽象方法 抽象类实现
- 命令jps
- Ubuntu change default sh from dash to bash
- 判断listview滚动,点击回到顶部
- java线程间的协调
- Spring-data-jpa+Hibernate 各种缓存的配置