目录
1)完全二叉树 (Complete Binary Tree)
1、完全二叉树、完美二叉树、完满二叉树
1)完全二叉树 (Complete Binary Tree)
完全二叉树从根结点到倒数第二层满足完美二叉树,最后一层可以不完全填充,其叶子结点都靠左对齐。
2)完美二叉树(Perfect Binary Tree)
一个深度为k(>=-1)且有2^(k+1) - 1个结点的二叉树称为完美二叉树。 (注: 国内的数据结构教材大多翻译为"满二叉树")。
3)完满二叉树(Full Binary Tree)
所有非叶子结点的度都是2(只要你有孩子,你就必然是有两个孩子)。
2、关于何时编译linux内核
不需要编译内核的情况是:
- 将网卡激活。
需要编译内核的情况:
- 删除系统不用的设备驱动程序;
- 升级内核;
- 添加新硬件。
3、软件是程序、数据及相关文档的集合
4、联合union类型的变量在定义时是可以被初始化的
union类型的变量在定义时是可以被初始化的,定义如下union类型
1 2 3 4 5 6 |
|
test变量的定义可以初始化,初始值的类型必须是union中第一个成员的类型。
5、逗号表达式
- 逗号运算符是所有运算符中优先级最低的。
- 逗号的作用是导致一系列运算都被顺序执行。
- 最右边的那个表达式的值将作为整个逗号表达式的值,其他的表达式的值将会被丢弃。
int a = 0;
a = 3 * 4, a++;
则先运行a = 3 * 4 ,此时a = 12,然后计算a++。最终结果为a = 13。
6、数据的物理结构和逻辑结构
- 数据的物理结构主要是指存储方式,包括线性存储和链式存储。
- 线性存储是指把数据元素存储在一块连续地址空间的内存中;
- 链式存储的关键是使用节点,逻辑上相邻的两个元素在物理上不一定相邻。
- 数据的逻辑结构(简称为数据结构)指的是数据之间的关系,包括线性结构、集合结构、树形结构、图形结构。
- 线性结构是指除了第一个最后一个元素以外,每个数据元素有且只有一个前驱元素和一个后继元素;
- 非线性结构则会有0个或者多个前驱元素和后继元素。
可参考文章《数据结构之逻辑结构与物理结构(存储结构)》