首页 > 试题广场 >

二叉树平衡检查

[编程题]二叉树平衡检查
  • 热度指数:17667 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解

平衡的定义如下,已知对于树中的任意一个结点,若其两颗子树的高度差不超过1,则我们称该树平衡。现给定指向树根结点的指针TreeNode* root,请编写函数返回一个bool,表示该二叉树是否平衡。


说明:本题目包含复杂数据结构TreeNode,点此查看相关信息
头像 一路向南_Velscode
发表于 2020-12-23 22:23:15
思想: 检查每个节点的左子树深度(ldeep)和右子树深度(rdeep) 如果相差超过1,则设置标志位 /* struct TreeNode {     int val;    &nb 展开全文
头像 罗布顿珠
发表于 2020-01-11 09:52:29
本题使用递归即可轻松解决。 public boolean isBalance(TreeNode root) { // write code here if(root==null){ return true; } 展开全文
头像 Dfine
发表于 2025-07-01 20:13:11
/* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(N 展开全文