#include <stdio.h>
#include <malloc.h> typedef int Item;
typedef struct node{
Item m_value;
struct node* m_pLeft;
struct node* m_pRight;
}BinaryTreeNode; int getTreeDepth(BinaryTreeNode *root){ if(root == NULL){
return ;
} int depthLeft = getTreeDepth(root->m_pLeft);
int depthRight = getTreeDepth(root->m_pRight);
return (depthLeft > depthRight) ? depthLeft + : depthRight + ; } void PrePrintTree(BinaryTreeNode* root){
if(root != NULL){
printf("%d ",root->m_value);
}else{
return;
} PrePrintTree(root->m_pLeft);
PrePrintTree(root->m_pRight);
printf("\n");
} int main(){
BinaryTreeNode* root = (BinaryTreeNode*)malloc(sizeof(BinaryTreeNode));
BinaryTreeNode* node2 = (BinaryTreeNode*)malloc(sizeof(BinaryTreeNode));
BinaryTreeNode* node3 = (BinaryTreeNode*)malloc(sizeof(BinaryTreeNode));
root->m_pLeft = node2;
root->m_pRight = node3; BinaryTreeNode *node4 = (BinaryTreeNode*)malloc(sizeof(BinaryTreeNode));
BinaryTreeNode *node5 = (BinaryTreeNode*)malloc(sizeof(BinaryTreeNode));
BinaryTreeNode *node6 = (BinaryTreeNode*)malloc(sizeof(BinaryTreeNode));
node2->m_pLeft = node4;
node2->m_pRight = node5;
node3->m_pRight = node6; BinaryTreeNode *node7 = (BinaryTreeNode*)malloc(sizeof(BinaryTreeNode));
node5->m_pLeft = node7; BinaryTreeNode *node8 = (BinaryTreeNode*)malloc(sizeof(BinaryTreeNode));
BinaryTreeNode *node9 = (BinaryTreeNode*)malloc(sizeof(BinaryTreeNode));
node7->m_pLeft = node8;
node7->m_pRight = node9; BinaryTreeNode *node10 = (BinaryTreeNode*)malloc(sizeof(BinaryTreeNode));
BinaryTreeNode *node11 = (BinaryTreeNode*)malloc(sizeof(BinaryTreeNode));
node9->m_pLeft = node10;
node10->m_pLeft = node11; root->m_value = ;
node2->m_value = ;
node3->m_value = ;
node4->m_value = ;
node5->m_value = ;
node6->m_value = ;
node7->m_value = ;
node8->m_value = ;
node9->m_value = ;
node10->m_value = ;
node11->m_value = ; printf("%d\n\n",getTreeDepth(root)); PrePrintTree(root);
}

剑指offer 39_二叉树的深度的更多相关文章

  1. 【Java】 剑指offer(55-1) 二叉树的深度

      本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 输入一棵二叉树的根结点,求该树的深度.从根结点到叶结点依次经过 ...

  2. Go语言实现:【剑指offer】二叉树的深度

    该题目来源于牛客网<剑指offer>专题. 输入一棵二叉树,求该树的深度.从根结点到叶结点依次经过的结点(含根.叶结点)形成树的一条路径,最长路径的长度为树的深度. Go语言实现: /** ...

  3. 《剑指offer》二叉树的深度

    本题来自<剑指offer> 反转链表 题目: 思路: C++ Code: Python Code: 总结:

  4. 剑指Offer 38. 二叉树的深度 (二叉树)

    题目描述 输入一棵二叉树,求该树的深度.从根结点到叶结点依次经过的结点(含根.叶结点)形成树的一条路径,最长路径的长度为树的深度. 题目地址 https://www.nowcoder.com/prac ...

  5. 剑指offer:二叉树的深度

    题目描述: 输入一棵二叉树,求该树的深度.从根结点到叶结点依次经过的结点(含根.叶结点)形成树的一条路径,最长路径的长度为树的深度. 解题思路: 这道题也是递归的思路,比较简单. 做的过程中遇到的一个 ...

  6. [剑指Offer] 38.二叉树的深度

    题目描述 输入一棵二叉树,求该树的深度.从根结点到叶结点依次经过的结点(含根.叶结点)形成树的一条路径,最长路径的长度为树的深度. [思路1]递归 /* struct TreeNode { int v ...

  7. 剑指offer——60二叉树的深度

    题目描述 输入一棵二叉树,求该树的深度.从根结点到叶结点依次经过的结点(含根.叶结点)形成树的一条路径,最长路径的长度为树的深度.   题解: 简单的深度遍历即可.   class Solution ...

  8. 【剑指Offer】二叉树的深度 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 解题方法 日期 题目地址:https://www.nowcoder.co ...

  9. 剑指 Offer 34. 二叉树中和为某一值的路径

    剑指 Offer 34. 二叉树中和为某一值的路径 输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径.从树的根节点开始往下一直到叶节点所经过的节点形成一条路径. 示例: 给定如下 ...

随机推荐

  1. Java String.split()用法小结(转载)

    在java.lang包中有String.split()方法,返回是一个数组 我在应用中用到一些,给大家总结一下,仅供大家参考: 1.如果用“.”作为分隔的话,必须是如下写法,String.split( ...

  2. dede数据库表结构和dedecms数据库字段说明

    表名:dede_addonarticle (ENGINE=MyISAM/CHARSET=gbk) 说明:Top 字段名 说明描述 具体参数 aid 文章ID mediumint(8) unsigned ...

  3. thinkphp中如何使用phpspreadsheet插件

    thinkphp中如何使用phpspreadsheet插件 一.总结 一句话总结:多百度,百度什么都有 1.thinkphp中用composer安装的插件的命名空间是什么? use PhpOffice ...

  4. 在其他平台上使用 ActiveMQ

    这一章讲了使用其他编程语言来访问 ActiveMQ,其他语言基本上都有相应的协议实现,所以说实现了协议,编程语言不是障碍! 还说了 ActiveMQ 提供了 RESTFul API 和 Ajax AP ...

  5. VSCode设置中文语言显示

    Vscode是一款开源的跨平台编辑器.默认情况下,vscode使用的语言为英文(us),如何将其显示语言修改成中文了? 1)打开vscode工具: 2)使用快捷键组合[Ctrl+Shift+p],在搜 ...

  6. 在sql查询中为了提高查询效率,我们常常会采取一些措施对查询语句进行sql优化,下面总结的一些方法,有需要的可以参考参考。

    转载https://www.cnblogs.com/zhang-bo/p/9138151.html 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建 ...

  7. "Cannot declare member function ...to have static linkage"错误

    英文解释: if you declare a method to be static in your .cc file. The reason is that static means somethi ...

  8. 如果两个人,两台电脑同时登录同一个帐号,同时对同一个账单提交,账单同时被服务器处理,那服务器应该先处理谁的,或者怎么规避这个问题。 非单点登录,重定向,stoken拦截器的问题

    方法一:给用户设置个状态 服务器端坐标记,比如数据库中增加一列,标识是否登陆,登录时先判断这个就行了,不过要考虑非正常退出的情况 http 方法二:在用户表里面 多加一个状态字段,登录成功 改变状态  ...

  9. 如何开启MySQL远程访问权限 允许远程连接

    1.改表法. 可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 " ...

  10. Thinkphp 自定义404页面

    一. 手册->调试->异常处理 在公共config.php 中加入: 'TMPL_EXCEPTION_FILE' => '/Public/404.html', //访问不存在的跳转 ...