【数据结构】二叉树

数据结构系列三:二叉树(一)

一、树的结构

二、树的概念

1.度

1.1节点的度:

1.2树的度:

2.层次

2.1节点的层次:

2.2树的高度:

3.二叉树

3.1二叉树:

3.2完全二叉树:

3.3满二叉树:

三、树的性质

1.树

1.1总节点个数:

1.2边:

2.二叉树

2.1叶节点个数:

2.2第i层满节点个数:

2.3到k层满节点个数:

3.完全二叉树

3.1树高度:

3.2节点下标:

3.3度1节点个数:

四、树的引用管理对象体系

五、二叉树的遍历


一、树的结构

每一个节点都是以它为根的大小整体树的根,在每一个整体树中,以亲人代的关系组织节点存储数据长成此整体树,代与代++上代与下代之间的直系亲人会连线,表示一个节点双亲生节点双亲++

二、树的概念

1.度

1.1节点的度:

该节点下一代的直系孩子的个数

1.2树的度:

整棵树中度数最大的那个节点的度


2.层次

2.1节点的层次:

该节点所处的代数

2.2树的高度:

整棵树共有的代数


3.二叉树

3.1二叉树:

节点全以<=2的度向下长的树 ,其中每次左节点长的树为左子树 ,右节点长的树为右子树

3.2完全二叉树:

二叉树按从上到下、从左往右的顺序生成节点形成的树

3.3满二叉树:

完全二叉树最下层都生满的树


三、树的性质

(默认根节点1层、0下标)

1.树

1.1总节点个数:

总节点个数 = 叶节点个数 + 度节点个数(度1+度2...)

1.2边:

个度n节点有n条边, 总N个节点共有N-1条边

(1.1与1.2常常结合起来列方程来求得结果的如2.1)


2.二叉树

2.1叶节点个数:

叶节点个数 = 度2节点个数 + 1

2.2第i层满节点个数:

第i层满的节点个数为

2.3到k层满节点个数:

n叉树到k层全满的节点个数为()/(n-1),二叉树 到k层全满的节点个数为


3.完全二叉树

3.1树高度:

n个总节点的树高度为向上取整

3.2节点下标:

下标i节点的左子节点为(2*i) + 1,右子节点为(2*i) + 2,父节点为(i - 1) / 2

3.3度1节点个数:

偶数总节点的树中度1节点个数为1,奇数总节点的树中无度1节点


四、树的引用管理对象体系

数据结构中的引用管理对象体系-CSDN博客

引用管理对象体系中,最上层引用直接管理最下层直接引用对象,直接引用管理的直接对象是内部类创的似复刻变量对象,似复刻变量里装一颗树的根节点和指向内容其它树的同类直接引用直接对象里存直接引用的直接对象就能管理到所有直接对象的管理模式 (直接对象递归直接引用 的和链表类变量一样),用来管理到一棵树的引用管理对象体系有很多 ,管理体系的不同就在++似复刻变量里设置装的其它树的引用可有很多种方案都可以去管理到整棵树++

五、二叉树的遍历

前后序遍历为根,中序遍历在根的左右分

相关推荐
不会就选b9 小时前
数据结构之排序
数据结构
我不会起名字32211 小时前
一天一道算法题(34):回溯法的经典例题(子集)
java·数据结构·python·算法·golang·深度优先·力扣
Logic10114 小时前
C语言/数据结构位运算题解:异或XOR找出货船中的“独特载货量“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
彧azz15 小时前
DFS与BFS:图遍历的两大核心算法
数据结构·学习·算法·深度优先·广度优先
青山木16 小时前
Hot 100 --- 最长递增子序列
java·数据结构·算法·leetcode·动态规划
土司大王16 小时前
LeetCode hot100——33.搜索旋转排序数组:Java 二分模板与 O(log n) 实现
数据结构·算法·leetcode
程序员阿鹏17 小时前
如何实现MySQL分库分表?
数据结构·数据库·sql·mysql·缓存
ysu_031418 小时前
08-二叉树遍历:四种方式详解
c语言·数据结构·算法·leetcode
Lyyaoo.19 小时前
【二分查找】【中等】搜索二维矩阵/排序数组的第一位和最后位置/搜索旋转排序数组/旋转排序数组中的最小值
java·数据结构·算法
Lyyaoo.20 小时前
【二分查找】【困难】寻找两个有序数组的中位数
java·数据结构·算法