leetcode111---Minimum Depth of Binary Tree
2016-01-04 23:22
381 查看
问题描述:
Given a binary tree, find its minimum depth.
The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.
方法一:DFS
方法二:BFS
Given a binary tree, find its minimum depth.
The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.
方法一:DFS
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public: int minDepth(TreeNode* root) { if(!root) return 0; int left = minDepth(root->left); int right = minDepth(root->right); return (left==0 || right==0)?(left+right+1):min(left, right)+1; } };
方法二:BFS
class Solution { public: // BFS int minDepth(TreeNode *root) { int res = 0; queue<TreeNode *> myQueue; if (root) myQueue.push(root); while (!myQueue.empty()) { int l = myQueue.size(); res++; for (int i = 0; i < l; i++) { TreeNode *tmp = myQueue.front(); if (!(tmp->left) && !(tmp->right)) return res; if (tmp->left) myQueue.push(tmp->left); if (tmp->right) myQueue.push(tmp->right); myQueue.pop(); } } return res; } };
相关文章推荐
- Win2003利用dfs(分布式文件系统)在负载均衡下的文件同步配置方案
- win2003分布式文件系统(dfs)配置方法[图文详解]
- win2003分布式文件系统及其部署 图文教程
- Hadoop2.6+jdk8的安装部署(1)——使用jar包安装部署【详细】
- Hadoop FS Shell
- DFS使用方法总结
- FastDFS注意事项
- 无忧技术带您预览DFS(分布式文件系统)管理控制台
- C 语言实现迷宫 DFS算法
- 一幅图弄清DFT与DTFT,DFS的关系
- HDFS---Namenode
- HDFS ---- Services startup
- POJ1523 SPF dfs
- poj1731 Orders dfs
- Surrounded Regions
- Word Ladder, Gray Code
- Binary Tree Zigzag Level Order Traversal,Restore IP Addresses,Word Search,Simplify Path
- UVA 11624
- HDU1495
- DFS求岛的个数LeetCode 200. Number of Islands