前言前面介绍的栈、队列都是线性结构(linear structure)。而树是非线性结构(non-linear structure)。因此,树中的元素之间一般不存在相似于线性结构的一对一的关系。很多其它地表现为多对多的关系。直观地看,它是数据元素(
转载
2019-05-30 19:43:00
40阅读
2评论
刚看到堆排序,顺便记录一下关于树的一些基本概念:前言前面介绍的栈、队列都是线性结构(linear structure)。而树是非线性结构(non-linear structure)。因此,树中的元素之间一般不存在类似于线性结构的一对一的关系,更多地表现为多对多的关系。直观地看,它是数据元素(在树中称...
转载
2014-11-01 23:23:00
35阅读
2评论
二叉树:二叉树是一棵特殊的树,二叉树每个节点最多有两个孩子结点,分别称为左孩子和右孩子。二叉树节点结构: struct BinaryTreeNode
{
T _data; //数据
BinaryTreeNode<T>* _left; //指向左子树
Bi
原创
2016-04-20 17:51:56
564阅读
点赞
前言树是数据结构中的重中之重,尤其以各类二叉树为学习的难点。一直以来,对于树的掌握都是模棱两可的状态,现在希望通过写一个关于二叉树的专题系列。在学习与总结的同时更加深入的了解掌握二叉树。本系列文章将着重介绍一般二叉树、完全二叉树、满二叉树、线索二叉树、霍夫曼树、二叉排序树、平衡二叉树、红黑树、B树。希望各位读者能够关注专题,并给出相应意见,通过系列的学习做到心中有“树”。1 重点概念1...
原创
2021-07-09 15:06:43
180阅读
一、满二叉树 一棵二叉树的结点要么是叶子结点,要么它有两个子结点(如果一个二叉树的层数为K,且结点总数是(2^k) -1,则它就是满二叉树。) 二、完全二叉树 若设二叉树的深度为k,除第 k 层外,其它各层 (1~k-1) 的结点数都达到最大...
转载
2020-10-29 00:26:00
596阅读
2评论
一、满二叉树 一棵二叉树的结点要么是叶子结点,要么它有两个子结点(如果一个二叉树的层数为K,且结点总数是(2^k) -1,则它就是满二叉树。)二、完全二叉树 若设二叉树的深度为k,除第 k 层外,其它各层 (1~k-1) 的结点数都达到最大个数,第k 层所有的结点都连续集中在最左边,这就是完全二
原创
2021-09-28 14:04:54
1522阅读
题目给定两个二叉树想象当你将它们中的一个 覆盖 到另一个上时两个二叉树的一些节点便
原创
2022-10-25 00:10:24
356阅读
一:前言 本文主要讲解以下二叉树的4个部分: (1)构造二叉树; (2)前,中,后序遍历(递归与非递归)和层次遍历; (3)求节点数; (4)求叶子数。 在此先约定下二叉树的节点结构和类的结构:struct Node { char data; Node *left, *right;};class BiTree{public: Node *root;
原创
2022-12-07 05:43:39
83阅读
题目输入某二叉树的前序遍历和中序遍历的结果请构建该二叉树并返回其根节点假设
原创
2022-10-24 18:36:05
298阅读
题目二叉树上有 n 个节点,按从 0 到 n - 1 编号其中节点 i 的两个子节点分别是 leftChild[i]
原创
2022-10-24 18:37:11
222阅读
0x00 题目给定一个二叉树,检查它是否是镜像对称的。0x01 思路对于二叉树的操作,一般
原创
2022-10-25 00:00:19
237阅读
题目给你一个二叉树判断它是否是高度平衡的二叉树一棵高度平衡二叉树定义为:一
原创
2022-10-25 00:11:41
223阅读
摘自:https://www.jianshu.com/p/bf73c8d50dc2 前言 树是数据结构中的重中之重,尤其以各类二叉树为学习的难点。一直以来,对于树的掌握都是模棱两可的状态,现在希望通过写一个关于二叉树的专题系列。在学习与总结的同时更加深入的了解掌握二叉树。本系列文章将着重介绍一般二叉
转载
2021-08-06 10:58:46
78阅读
个人总结(不到位的勿喷!)二叉树: 每个结点不超过2个子树的树结构。满二叉树:一个结点要么是叶子节点,要么有两个叶子结点。完全二叉树:深度为h,除h层外,h-1层是满二叉树,h层结点连续集中在左边。平衡二叉树(AVL树):左右子树高度不超过1.二叉排序树(二叉查找树):左结点比根结点小,右结点比根结点大。
原创
2022-11-30 14:11:26
563阅读
完美二叉树、完全二叉树和完满二叉树完美(Perfect)二叉树,完全(Complete)二叉树和完满(Full)二叉树的区别。树(Tree)树
二叉树宽度: 使用队列,层次遍历二叉树。在上一层遍历完成后,下一层的所有节点已经放到队列中,此时队列中的元素个数就是下一层的宽度。以此类推,依次遍历下一层即可求出二叉树的最大宽度
转载
2017-12-10 22:15:00
317阅读
2评论
就是递归进行左右节点反转 package binarytree.invertTree; import binarytree.untils.TreeNode; /** * 226. 翻转二叉树 * 翻转一棵二叉树。 * * 示例: * * 输入: * * 4 * / \ * 2 7 * / \ / \
原创
2021-12-23 11:07:55
140阅读