2025.9.15——知识点学习+卷1单选

知识点学习

回路

起点和终点相同的路径,也叫“环”

重边

两个顶点中间不只有一条边

自环

自己到自己的边

简单图

没有重边和自环的图

完全图

每对定点之间都恰有一条边相连

稠密图

边数接近完全图,e>=NlogN

稀疏图

边数远少于完全图,e<NlogN

强连通图

针对有向图,从任意节点出发能够到达所有节点。
反之则为非强连通图。

弱连通图

针对有向图,满足非强连通图的前提下,若把所有有向边改为无向边,图是连通的。

欧拉通路

恰好通过图中所有边一次的路径

欧拉回路

恰好通过图中所有边一次的回路

欧拉图

具有欧拉回路的图

半欧拉图

不具有欧拉回路但具有欧拉通路的图

无向图判定

欧拉图:连通图中,所有节点的度数都为偶数
半欧拉图:连通图中,只有两个节点的度数为奇数,其他节点的度数都为偶数

有向图判定

欧拉图:强连通图中,所有点的入度等于出度
半欧拉图:弱连通图中,至多一个点的入度比出度大1,至多一个点的出度比入度大1,其他点的入度等于出度

哈密顿通路

通过图中所有点恰好一次的路径

哈密顿回路

通过图中所有点恰好一次的回路

哈密顿图

具有哈密顿回路的图

半哈密顿图

不具有哈密顿回路,但具有哈密顿通路的图

平面图

在一个无向图G中,各边除了顶点相交外,其余各点均不相交,称G为可平面图,简称平面图

边双连通图

任意两点间存在两条没有重复边的路径的图,称为边双连通图
等价定义:任意一条边至少在一个简单环中

点双连通图

任意两条边都在一个简单环中

结点的度

结点的孩子的数量

树的度

所有节点度的最大值

分支结点

度大于0的结点

祖先结点

从这个结点到根的路径中,除了它本身的所有结点

兄弟结点

具有同一个父亲的所有结点互称兄弟结点

结点高度

从结点到该节点子树中所有叶子结点的最长路径的边数

结点深度

从结点到根结点的路径的边数

结点层数

结点深度+1

树的高度

根结点的高度

树的宽度

具有最多结点数量的那一层的结点数量

完全二叉树

只有最后一层是从左到右放结点,其它层都是满的的二叉树

哈夫曼树

将一棵树的结点分为两种:
1.带权结点,度为0
2.无权结点,度为2
这棵树的带权路径长度为所有带权结点的深度(根的深度为0)乘以权值的和。
给定所有带权结点的权值,带权路径长度最小的树叫做哈夫曼树

哈夫曼树性质

1.权值越大的结点深度越小
2.哈夫曼树不唯一
3.包含n棵树的森林需要n-1次合并才能形成哈夫曼树,生成n-1个新结点

哈夫曼算法

1.将所有权值设置为只有一个带权根结点的树
2.从树的集合中选择两个根权值最小的树,以它们为左右子树生成一棵新树,根权值为左右子树权值之和
3.删去两个原来的树,加入新树
4.重复这个过程,直到只剩下一棵树

哈夫曼编码

由哈夫曼树得到的前缀编码
前缀编码:要求任意字符的编码不能是其他字符编码的前缀

树的重心

在一棵树中,去掉这个结点,剩下的所有连通块中结点数量最多的连通块的结点数量最小
这个结点就叫树的重心

计算原理与排列组合

特殊优先

优先讨论特殊要求的点的排列数量,再讨论其他点的排列数量

排序

不稳定的排序

选择排序、快速排序、堆排序

Linux指令

touch

创建文件、修改文件的时间戳

echo

用于在终端中显示文本或变量的值

rmdir

删除文件目录

编译命令

g++ -o main main.cpp

将main.cpp编译成可执行文件main

g++ -c main.cpp

将main.cpp编译成对象文件main.o

g++ -o program file1.o file2.o file3.o

将多个对象文件链接到一起,生成一个可执行文件

杂项

常用后缀名

音频:.mp3 .wav .aac .flac .ogg
视频:.avi .mpg .mov .mp4 .swf .mky .rmvb

计算机病毒的特性

1.繁殖性
2.破坏性
3.传染性
4.潜伏性
5.隐藏性
6.可触发性

前中后缀表达式

前缀表达式:波兰表达式,符号在前,数字在后,方便机器识别
中缀表达式:日常使用的表达式
后缀表达式:逆波兰表达式,数字在后

卷1单选

二进制编码

负数一般用补码存储,对绝对值取反并加1

Dijksra时间复杂度

N为节点数,M为边数
普通实现:O(NN+M)
堆优化:O((N+M)logN)
最坏情况:稠密图,M=N
N

class、struct、public、private

posted @ 2025-09-15 12:25  Kevin_Mu  阅读(17)  评论(0)    收藏  举报