树
2024-01-08 18:34:42
4_1二叉树的最大深度
给定一个二叉树?root
?,返回其最大深度。
二叉树的?最大深度?是指从根节点到最远叶子节点的最长路径上的节点数。
Answer-
方法一:深度优先递归
核心 :
n1 = maxdep(dp->left);
n2 = maxdep(dp->right);
return (n1>n2 ? n1:n2) + 1;?
方法二:广度优先遍历
核心 :一边pop一边push,怎么知道要pop多少个呢?用一个int size;来记录上一层应该出多少个元素。pop上层元素前先记录该层总个数size,出一个则size--,一边出一边加其左右孩子,就解决了。总体思想是每次只让队列保留当前层的所有节点。
学会了:
C++队列的使用
//导入
include "queue.h"
//声明
Queue<datatype> queue_name;
//加入
queue_name.push(value);
//弹出-和stack一样不返回元素仅仅弹出
queue.pop;
//获取front指向元素
queue.front();
//判空
queue.empty();
文章来源:https://blog.csdn.net/qq_55414382/article/details/135458623
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!