leecode 解题总结:104. Maximum Depth of Binary Tree

来源:互联网 发布:西昌站外优化 编辑:程序博客网 时间:2024/06/05 17:32
#include <iostream>#include <stdio.h>#include <vector>using namespace std;/*问题:Contributors: AdminGiven a binary tree, find its maximum depth.The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.分析:给定一颗二叉树,找到它的最大深度。这是程序员面试金典的一道题目。应该是用递归。如果当前结点为空,返回高度为0如果当前结点非空,返回左右孩子结点高度的较大值 + 1*/struct TreeNode {     int val;     TreeNode *left;     TreeNode *right;     TreeNode(int x) : val(x), left(NULL), right(NULL) {}};class Solution {public:    int maxDepth(TreeNode* root) {        if(!root){return 0;}return ( max( maxDepth(root->left) , maxDepth(root->right) ) + 1 );    }};void print(vector<int>& result){if(result.empty()){cout << "no result" << endl;return;}int size = result.size();for(int i = 0 ; i < size ; i++){cout << result.at(i) << " " ;}cout << endl;}void process(){ vector<int> nums; int value; int num; Solution solution; vector<int> result; while(cin >> num ) { nums.clear(); for(int i = 0 ; i < num ; i++) { cin >> value; nums.push_back(value); } }}int main(int argc , char* argv[]){process();getchar();return 0;}

0 0
原创粉丝点击