51
Dev开发社区
首页
文章
问答
工具
搜索
登录
注册
#叉树
二叉树深度的算法
题目:二叉树用二叉链表表示,编写求二叉树深度的算法。答案是:intheight(BitreeT){ if(T==NULL)return0; u=height(T->lchild); v=height(T->rchild); if(u>n)return...
开发笔记
·
2024-06-16
二叉
深度
算法
二叉树的完整代码实现
#include<stdio.h>#include<stdlib.h>#include<malloc.h>typedefstructNode//结构体{chardata;structNode*LChild;structNode*RChild;}BinNode,*BinTree;Bin...
开发笔记
·
2023-03-10
二叉
完整
代码
实现
二叉树的遍历图解例题详解
一、前序遍历:根节点->左子树->右子树二、中序遍历:左子树->根节点->右子树三、后序遍历:左子树->右子树-->根节点四、层序遍历:从根节点出发,依次访问左右子树结点,再从左右子树出发,依次访问它们的子树结点,直到节点访问完毕。...
开发笔记
·
2022-03-27
二叉
遍历
图解
例题
详解
python二叉树的后序遍历算法
#Definitionforabinarytreenode.classTreeNode:def__init__(self,x):self.val=xself.left=Noneself.right=None#后序遍历,先遍历左子树,在遍历右子树,在遍历根节点。fromtypingimportListclassSolut...
开发笔记
·
2021-03-12
python
二叉
后序
遍历
算法
Java实现二叉树的前序、中序、后序、层序遍历(递归方法)
public class Tree<AnyType extends Comparable<? super AnyType>> { private static class BinaryN...
代码星球
·
2021-02-18
Java
实现
二叉
前序
中序
二叉树的创建
对于创建一棵二叉树,首先想到的方法是使用递归思想进行。这里,采用先序递归创建二叉树。首先介绍下自己写的二叉树的定义:1typedefintTElementType;23typedefstructBiTNode4{5TElementTypedata;6BiTNode*leftChild,*rightChild;7}BiT...
代码星球
·
2021-02-17
二叉
创建
LeetCode(124):二叉树中的最大路径和
Hard!题目描述:给定一个非空二叉树,返回其最大路径和。本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不需要经过根节点。示例1:输入:[1,2,3]1/23输出:6示例 2:输入:[-10,9,20,null,null,15,7] -10 &n...
代码星球
·
2021-02-16
LeetCode
二叉
中的
最大
路径
LeetCode(114): 二叉树展开为链表
Medium!题目描述:给定一个二叉树,原地将它展开为链表。例如,给定二叉树1/25/346将其展开为:123456解题思路:这道题要求把二叉树展开成链表,根据展开后形成的链表的顺序分析出是使用先序遍历,那么只要是数的遍历就有递归和非递归的两种方法来求解,这里我们也用两种方法来求解。首先来看递归版本的,思路是先利用DF...
代码星球
·
2021-02-16
LeetCode
二叉
展开
链表
LeetCode(111):二叉树的最小深度
Easy!题目描述:给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7],3/920/157返回它的最小深度 2.解题思路:二叉树的经典问题之最小深度问...
代码星球
·
2021-02-16
LeetCode
二叉
最小
深度
LeetCode(110):平衡二叉树
Easy!题目描述:给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:/一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。示例1:给定二叉树 [3,9,20,null,null,15,7]3/920/157返回 true 。示例2:给定二叉...
代码星球
·
2021-02-16
LeetCode
平衡
二叉
LeetCode(107): 二叉树的层次遍历 II
Easy!题目描述:给定一个二叉树,返回其节点值自底向上的层次遍历。(即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)例如:给定二叉树 [3,9,20,null,null,15,7],3/920/157返回其自底向上的层次遍历为:[[15,7],[9,20],[3]]解题思路:从底部层序遍历其实还是从...
代码星球
·
2021-02-16
LeetCode
二叉
层次
遍历
II
LeetCode(106):从中序与后序遍历序列构造二叉树
Medium!题目描述:根据一棵树的中序遍历与后序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出中序遍历inorder= [9,3,15,20,7]后序遍历postorder=[9,15,7,20,3]返回如下的二叉树:3/920/157解题思路:这道题要求从中序和后序遍历的结果来重建原二叉树...
代码星球
·
2021-02-16
LeetCode
从中
后序
遍历
序列
LeetCode(105):从前序与中序遍历序列构造二叉树
Medium!题目描述:根据一棵树的前序遍历与中序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出前序遍历preorder= [3,9,20,15,7]中序遍历inorder=[9,3,15,20,7]返回如下的二叉树:3/920/157解题思路:这道题要求用先序和中序遍历来建立二叉树,由于先序...
代码星球
·
2021-02-16
LeetCode
从前
中序
遍历
序列
LeetCode(104):二叉树的最大深度
Easy!题目描述:给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7],3/920/157返回它的最大深度 3。解题思路:求二叉树的最大深度问题用到深...
代码星球
·
2021-02-16
LeetCode
二叉
最大
深度
LeetCode(103): 二叉树的锯齿形层次遍历
Medium!题目描述:给定一个二叉树,返回其节点值的锯齿形层次遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。例如:给定二叉树 [3,9,20,null,null,15,7],3/920/157返回锯齿形层次遍历如下:[[3],[20,9],[15,7]]解题思路:这道二叉树...
代码星球
·
2021-02-16
LeetCode
二叉
锯齿形
层次
遍历
首页
上一页
1
2
3
4
5
...
下一页
尾页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他