任何一个有N个结点的无向图,若其边数为N(N-1)/2,则这个无向图就是完全图
19.有向完全图
任何一个有N个结点的有向图,若其弧个数为N(N-1)个,则这个有向图就是有向完全图。
20.广度遍历
按层次编历方式,从某一点V0开始遍历它的所有邻接点V1,V2……,再依次访问V1,V2…的所有未被访问过的邻接点,直到所有的点均遍历完成
21.关键字
数据元素的某个数据项的值,用它可以标识列表的一个或一组元素。
22.串
串是字符线性的有限集合。
23.子串
串中任意个连续的字符组成的子序列称作该串的子串。
24.栈
是一种受限线性表,是插入和删除操作在同一端进行的,是后进先出的线性表。
25.树
树是n(n>=0)个结点的有限集。在任意一棵非空树中:
(1)有且仅有一个特殊的称为根的结点;
(2)当n>1时,其余结点可分成m(m>0)个互不相交的有限集T1,T2,…,Tm,其中每一个集合本身又是一棵树,并且称为根的子树。
26.二叉树
二叉树是每个结点至多有两个孩子结点的一种树。其中两个孩子结点分别被称为左孩子结点和右孩子结点。
27.子孙
子孙结点以某结点为根的子树中的任一结点都称为该结点的子孙。
28.孩子结点与双亲结点
树中某个结点的子树的根结点称为该结点的孩子结点。相反,称该结点为孩子结点的双亲结点。
29.结点的度
树的某个结点的分支(子树)个数叫做该结点的度。
30.树的度
树的度是树中所有结点的最大度数。
31.平衡因子
结点的左子树深度与右子树深度之差。
32.生成树
一个连通图的生成树是指一个极小连通子图,它含有图中的全部顶点,N-1条边。
33.满二叉树
深度为K,且有2K -1个结点的二叉树
34.物理结构(存储结构)
物理结构又称为数据的存储结构,是指数据的逻辑结构在计算机中的映像(表示),即数据结构在计算机中的存储方法。
35.线索
在二叉树中,利用空余的指针指向二叉树某种遍历方式的结点的前驱和后继,这种指向前驱和后继的指针,叫线索。
36.线索二叉树
对二叉树以某种次序进行遍历并加上线索的过程叫做线索化。线索化了的二叉树称为线索二叉树。
37.广义表
广义表简称表,是零个或多个原子表所组成的有限序列。
38.强连通分量
有向图的极大强连通子图,称为有向图的强连通分量。
39.结点的带权路径长度
该结点到树根之间的路径长度与结点上权的乘积。
40.插入排序
在一个已排好序的记录子集的基础上,每一步将下一个待排序的记录有序地插入到已排好序记录的子集上,直到将所有待排记录全部插入为止。
41.祖先
一个结点的祖先是指从根结点到该结点的路径上的所有结点。
42.数据结构
数据结构是数据元素的集合以及定义在该集合上的关系。
43.模式匹配
子串的定位操作称作串的模式匹配。
44.单循环链表
是单链表的另一种形式,它是一个首尾相接的链表,表中最后一个结点的指针域由null改为指向头结点或线性表的第一个结点,整个链表形成了一个环.
45.线索
在二叉树的存储结构中,必有N+1个空域,利用这些空域存放某种遍历的前驱和后继,其中指向前驱和后继的指针叫线索.
46.图
图是顶点与边的集合。一般表示为一个二元组,即,图G=(V,E),各个顶点之间是多对多的关系。
47.折半查找
对于顺序存储的有序表,先取中间位置的记录关键字与所给的关键字进行比较,若相等,则查找成功,否则,若给定的关键字比中间的关键字大,在原表的后半部分比较,反之,在原表的前半部分比较,如此反复,逐步缩小范围,直到找到为止,或找不到,最后查找范围为空.
48.最小生成树
在图G的所有生成树中,树权值最小的那棵生成树,称作最小生成树.
49.广度优先搜索(BFS)
首先访问出发点v,接着依次访问v的所有邻接点w1,w2,…,wt,然后再依次访问与wl,w2,…,wt邻接的所有未曾访问过的顶点。依此类推,直至图中所有和源点v有路径相通的顶点都已访问到为止。此时从v开始的搜索过程结束。
(若G是连通图,则遍历完成;否则,在图C中另选一个尚未访问的顶点作为新源点继续上述的搜索过程,直至G中所有顶点均已被访问为止。)
50.完全二叉树
对满二叉树的结点从上到下,从左到右进行依次进行编号,若有一棵二叉树的每一个结点都与深度为K的满二叉树中编号都一一对应时,只是最后一层不满,称做完全二叉树.
51.前缀编码
任何一个字符的编码都不是另一个字符编码的前缀,这种编码叫做前缀编码.
52.广义表
是零个或多个原子表所构成的有序序列.
53.线索二叉树
利用二叉树的一些空闲指针指向该结点的前驱或后继,这种指针叫线索,线索后了的二叉树,称为线索二叉树.
54.树的高度
树中所有结点的层次的最大值.
55.堂兄弟
同一层上不同双亲的结点,互称堂兄弟.
56.叶子结点
度为 0 的结点,即没有后继的结点.
57.森林
M棵互相不相交的树构成的集合,将一棵非空树的根结点删除,树就变成了森林.
58.树的路径长度
树中每个结点到根结点的路径长度之和.
59.树的带权路径长度(WPL)
树中所有叶子结点的带权路径长度之和.
60.哈夫曼树
设有N个权值的结点构造一棵有N个叶子结点的二叉树,其中WPL最小的那棵树,为哈夫曼树.
61.哈夫曼编码
一般以N种字符出现的频率做权值,构造哈付曼树,左孩子边做0,右孩子边做1,那么从根到叶子结点经过的0和1序列,构成了哈夫曼编码.
62.图中顶点的度
顶点V的度是图中和顶点V相关联的边的数目。包括入度和出度两种。
63.子图
图G=(V,E)与图G1=(V1,E1),若V1包含于V,且E1包含于E,则G1是G的子图。
64.连通图
对于无向图,若V1到V2有路径,称V1V2是连通的,若图中任意两点都是连通的,则称该无向图是连通图。
65.网
图的弧或边有与它相关的有意义的数,称作权,带有权值的图称作网。
66.深度优先搜索(DFS)
类似树的先序遍历,在图中任选一个顶点作为出发顶点V0,访问V0后,依次从V0的没被访问过的邻接点出发进行深度优先搜索。直到与V0所连通的所有顶点均被访问。如果,此时图中还有顶点尚未访问,则从剩余的顶点中再任选一个顶点作为出发顶点V0,重复上述过程,直到图中全部顶点均被访问为止。
67.简单回路
除了第一个顶点和最后一个顶点之外,其余顶点均不相同的回路称为简单回路。
68.简单路径
在用一个顶点序列表示一条路径时,若序列中没有相同的顶点重复出现,则称其为简单路径。
69.查找
根据给定的关键字值,在特定的表中,确定一个其关键字与给定值相同的数据元素,并返回该数据元素在列表中的位置。这个过程叫查找。
70.平均查找长度(ASL)
为确定数据元素在表中的位置,需和给定值进行比较的关键字个数的数学期望值,成为查找算法在查找成功的平均查找长度。
71.二叉排序树
它或是一棵空树,或是有下面性质的树:若左或右子树不空,左子树所有结点值小于根结点,而右子树所有结点值大于根结点的值,其左右子树也是二叉排序树。
72.顺序查找
对于给定的关键字K,从线性表的第一个(或最后一个)元素开始,依次向后(或前)与元素的关键字比较,若某个记录的关键字与K 相等,查找成功,否则失败。
73.平衡二叉树
或是一棵空树,或左右子树高度差的绝对值小于等于1而且,左右子树也是平衡二叉树。
74.插入排序
在一个已排好序的基础上,每一步将下一个待排序记录插到已排好记录的子集上,使之重新有序,直到所有待排记录插完为止。
75.分块查找(索引查找)
分块查找以前两个为基础,将待查记录分成若干块,每块的关键字无序,但每块的关键字的最大值有序,查找时,先查找到待查记录所在的块,再在块内进行顺序查找。找块时,即可以用折半查找,也可用顺序查找。
76.拓扑排序
由某个集合上的偏序集得到该集合上的一个全序,这个操作叫做拓扑排序。
77.归并排序
将两个或两个以上的有序表合并成一个新的有序表,开始将每个元素当成是一个个单独的有序表,逐渐表个数以原来一半的速度递减,每个表的长度却是原来长度的2倍增加,不断重复,直到最后是一个表,而表的长度是元素个数为止。
78.排序
根据关键字的递减或递增的次序,把文件中的各个记录依次排列起来,可使一个无序的数据元素序列变成一个有序的序列的操作。
79.shell排序
它是插入排序的一种,又叫缩小增量排序,先按增量进行分组,组内插入排序,然后每次缩短增量,再进行分组和组内插入排序, 直到增量为1时,进行最后一次排序止。
80.内部排序
指的是待排序记录存放在计算机存储器中进行的排序过程;
81.外部排序
指的是待排序记录的数量很大,以致内存一次不能容纳全部记录,在排序过程中对外存进行访问的排序过程。
82.不稳定排序
假设Ki=Kj(1≤i≤n,1≤j≤n,i≠j),且在排序前的序列中Ri领先于Rj(即i<j)。若在排序后的序列中Rj 领先于Ri ,则称所用的排序方法是不稳定的。
最后
ActiveMQ消息中间件面试专题
- 什么是ActiveMQ?
- ActiveMQ服务器宕机怎么办?
- 丢消息怎么办?
- 持久化消息非常慢怎么办?
- 消息的不均匀消费怎么办?
- 死信队列怎么办?
- ActiveMQ中的消息重发时间间隔和重发次数吗?
ActiveMQ消息中间件面试专题解析拓展:
redis面试专题及答案
- 支持一致性哈希的客户端有哪些?
- Redis与其他key-value存储有什么不同?
- Redis的内存占用情况怎么样?
- 都有哪些办法可以降低Redis的内存使用情况呢?
- 查看Redis使用情况及状态信息用什么命令?
- Redis的内存用完了会发生什么?
- Redis是单线程的,如何提高多核CPU的利用率?
Spring面试专题及答案
- 谈谈你对 Spring 的理解
- Spring 有哪些优点?
- Spring 中的设计模式
- 怎样开启注解装配以及常用注解
- 简单介绍下 Spring bean 的生命周期
Spring面试答案解析拓展
高并发多线程面试专题
- 现在有线程 T1、T2 和 T3。你如何确保 T2 线程在 T1 之后执行,并且 T3 线程在 T2 之后执行?
- Java 中新的 Lock 接口相对于同步代码块(synchronized block)有什么优势?如果让你实现一个高性能缓存,支持并发读取和单一写入,你如何保证数据完整性。
- Java 中 wait 和 sleep 方法有什么区别?
- 如何在 Java 中实现一个阻塞队列?
- 如何在 Java 中编写代码解决生产者消费者问题?
- 写一段死锁代码。你在 Java 中如何解决死锁?
高并发多线程面试解析与拓展
jvm面试专题与解析
- JVM 由哪些部分组成?
- JVM 内存划分?
- Java 的内存模型?
- 引用的分类?
- GC什么时候开始?
JVM面试专题解析与拓展!
执行,并且 T3 线程在 T2 之后执行?
- Java 中新的 Lock 接口相对于同步代码块(synchronized block)有什么优势?如果让你实现一个高性能缓存,支持并发读取和单一写入,你如何保证数据完整性。
- Java 中 wait 和 sleep 方法有什么区别?
- 如何在 Java 中实现一个阻塞队列?
- 如何在 Java 中编写代码解决生产者消费者问题?
- 写一段死锁代码。你在 Java 中如何解决死锁?
高并发多线程面试解析与拓展
[外链图片转存中…(img-vDzRG6B1-1721190544239)]
jvm面试专题与解析
- JVM 由哪些部分组成?
- JVM 内存划分?
- Java 的内存模型?
- 引用的分类?
- GC什么时候开始?
JVM面试专题解析与拓展!
[外链图片转存中…(img-UiCk1kQK-1721190544240)]