本帖最后由 冯强计算机考研 于 2021-3-25 16:50 编辑
22计算机考研交流总QQ群:1032995316 课程咨询微信号|容嬷嬷(csky-rmm)
◐◑◒◓◔◕
1.你为什么选择这所学校? 答:来之前我对本校进行了比较深入的了解,学校具有优秀的师资力量和浓厚的学习氛围,XX(报考专业)专业在各大高校中实力靠前。学院重视产学结合,倡导技术立身、学以致用,对外的口碑也一直很好,在实践与研究上有其独特新锐之处,比如XXX(这里需要去该校的官网查找该校本专业在科研上做出过哪些成就,正好这些方向也让自己很感兴趣,自己的某项特长和这里的某项研究方向十分契合)。
2.介绍一下你的本科毕设?请详细说明 答:我的毕业设计做的是XX方面的项目,主要运用了XX知识(比如java项目用的ssm框架,就大致说一下里面的什么模块用的什么方式实现的,项目的业务流程是什么),项目的亮点是XX(项目里面用到的比较前沿高级的技术是哪些),项目在XX方面进行了创新(如果项目是偏技术点的就主谈技术,偏思维创新的可以讲一下这个项目设计出来的价值和意义)。
3.毕设中遇到最难已解决的问题是什么,你是如何解决的? 这里如实回答就好了,毕设开发中碰见的java报错可以收集起来(收集那种比较难攻克的技术难点,类名写错了或者哪个包缺失了这种简单问题就不要放在里面了),解决方法尽量回答得专业一点,还可以说一下自己从中学习到了哪一块知识,这块知识的原理是什么,如何正确运用才能避免错误。
1.自我介绍 (1)开头尽量简洁。一句Dear professors, I feel so glad to meet all of you here.后就可以开始介绍自己的基本信息了(基本信息需要准确、简短)
(2)适当聊聊自己具有哪些专业优势,自己的优势和自己想要选择的研究方向很契合,对该领域的研究有什么积极作用。
(3)通篇尽量凝练一点,自己的优势,相关经验都可以适当提及,总时长控制到2~3分钟。
2.专业问题 多去阅读自己想要选择的导师所研究领域的相关文献,基本只需要记住摘要中的一两句关键技术即可,面试时考官一般会问你对这个领域的认识,考前多找几篇论文或文献的摘要,组成一段没有错误的回答就可以很好的应对了。
1.时间复杂度 时间复杂度除了一定会在初试中出现外,在复试中出现的几率也很大,下面是比较常出的问题: (1)语句的频度是指什么? 答:该语句在算法中被重复执行的次数。 (2)大T是什么意思? 答:算法中所有语句的频度之和。 (3)大O是什么意思? 答:是时间复杂度的表示,用来描述大T的数量级。
2.逻辑结构 逻辑结构是指数据元素之间逻辑关系,与存储结构无关,独立于计算机。(只需要记住下面这张表就行)
3.存储结构 (1)哪种存储方式能实现随机存取? 答:顺序存储。 (2)链式存储的缺点是什么? 答:链式存储每个元素存储指针会占用额外空间且只能实现顺序存取。
4.线性表 头指针和头结点的区别? 答:头指针是指向第一个节点存储位置的指针,无论链表是否为空都存在;头结点是放在第一个元素节点之前,便于在第一个元素节点之前进行插入和删除的操作的结点,可有可无。
5.栈和队列 (1)栈和队列的区别? 答:队列是允许在一端进行插入另一端进行删除的线性表,原则为先进先出,队列在表头进行删除在表尾进行插入;栈是只能在表尾进行插入和删除操作的线性表,原则为后进先出, 插入和删除操作都在栈顶进行。 (2)共享栈的原理是什么?/共享栈有什么优势? 答:共享栈栈底位置相对不变,可以让两个顺序栈共享一个一维数组空间,两个栈的栈底分别设置在共享空间的两端,两个栈顶向共享空间的中间延伸。优点是能够更有效的利用存储空间,减少上溢出现的概率。 (3)怎样区分循环队列是队空还是队满? 答:一般情况下循环队列是队空队满判定条件都是Q.front == Q.rear;如果队头指针指向第一个数,队满标志为(Q.rear+1)%MaxSize == Q.front;如果队尾指针指向最后一个数的下一个位置队空的条件为Q.size == 0,队满的条件为 Q.size == MaxSize。 (4)栈的相关算法思想(括号匹配、后缀表达式等) (5)队列在计算机系统中的应用(主机和打印机之间速度不匹配、由多用户引起的资源竞争问题等) (6)特殊矩阵的压缩存储原理(对称矩阵、如稀疏矩阵、上(下)三角矩阵) 答:矩阵中的相同数据元素(元素0也算)只存储一个。
6.串 (1)暴力模式匹配 答:从主串的第一个字符起,与子串的第一个字符比较,相等则继续比较,不等则从主串的下一个位置起,继续和子串开始比较,直到最后看是否匹配成功。 (2)KMP算法(建议自己去搜一下,掌握原理后结合自己的理解作答,回答尽量简单易懂比较好)
7.树与二叉树 (1)二叉树的相关概念(树是非线性结构,要知道满二叉树、完全二叉树的概念,二叉树的先中后序遍历) (2)怎样唯一确认一颗二叉树? 答:由二叉树的先序序列和中序序列、后序序列和中序序列、层序序列和中序序列都可以唯一确定一颗二叉树。(适当说一下如何运用两个序列确定的) (3)线索二叉树的概念 答:对于n个结点的二叉树,在二叉链存储结构中有n+1个空链域,利用这些空链域存放在某种遍历次序下该结点的前驱结点和后继结点的指针,这些指针称为线索,加上线索的二叉树称为线索二叉树。 (4)树的存储结构(双亲表示法、孩子表示法、孩子兄弟表示法,孩子兄弟表示法是重点) (5)二叉排序树的定义?二叉排序树的查找? 答:二叉排序树可能为空树,也可能为左子树结点值小于根结点值小于右子树结点值的树;二叉排序树的查找是从根节点开始的,若二叉树非空,先将给定值与根结点的关键字比较,若相等,则查找成功;若不等,如果小于根结点的关键字,则在根结点的左子树上查找,否则在根的右子树上查找。二叉排序树的查找是一个递归的过程。 (6)什么是平衡二叉树? 答:任意结点左右子树高度差的绝对值不超过1的二叉树为平衡二叉树。 (7)如何构造哈夫曼树? 答:统计出每种字符出现的频率,找出字符中最小的两个,小的在左边,大的在右边,组成二叉树。在频率表中删除本次找到的两个数并加入本次最小两个数的频率和。 (8)什么是前缀编码 答:没有一个编码是另一个编码的前缀,就叫前缀编码。
8.图 (1)存储结构(邻接矩阵法、邻接表法、十字链表法、邻接多重表,前两个比较重要) (2)图的遍历(广度优先搜索、深度优先搜索,深度优先比较重要) (3)最小生成树和最短路径(dijkstra算法、Floyd算法、prim算法、kruskal算法) (4)关键路径(AOE、AOV网)
9.查找 (1)各种查找方法的概念(顺序查找、折半查找、分块查找、二叉排序树、平衡二叉树) (2)B、B+树(比较重要,难点) 答:B树是所有结点的平衡因子均等于0的多路平衡查找树,.B+是B树的变形树。(它们的概念和差异都需要去掌握,这里只给出了简单解释) (3)哈希表(概念、哈希函数的构造方法、冲突的解决办法) 答:哈希表又称为散列表,是根据关键字码的值直接进行访问的数据结构;哈希函数的构造方法包括:直接定址法,除留余数法,数字分析法,平方取中法,折叠法,随机数法。(直接定址法,除留余数法比较重要);哈希冲突的解决方法包括开放定址法和拉链法(开放定址法更重要),开放定址法包括线性探查法,二次探查法,双重散列法。(具体概念自查)
10.排序 内部排序的概括与总结(直接插入排序、折半插入排序、希尔排序、简单选择排序、堆排序、冒泡排序、快速排序、归并排序、基数排序,记住下面这两张图,详细算法要自备)
今天的面试高频问题就分享到这里啦,除了这些问题之外还有不少问题考官也会问到哦,小伙伴们下来一定要系统性的复习每一章的重点知识,准备得越多越有把握嘛。
交流群 ▲ 22计算机考研交流总QQ群:1032995316 ▲ 南航计算机/软件考研交流QQ群(有学校资料):1138098949 ▲ 西南大学计算机/软件考研交流QQ群(有学校资料):1128814897 ▲咨询:容嬷嬷微信(csky-rmm)
微信公众号:冯强计算机与软工考研
|