YMZ's Blog

种一棵树最好是什么时候?

0%

2022中科大CS考研面试问题整理

整理了一些我准备复试中科大面试时的资料,包括自我介绍,英语问题,专业问题以及解答等。

自我介绍

一般要准备个3分钟的自我介绍,要有侧重点,比如介绍自己的项目,这样老师问问题就会围绕项目来问,不然老师就会自己问他自己准备的问题了。。。还有时间要控制好,不能太短,不然时间充裕的情况下,后面问的问题就会比较多了。。。当然太长了也不好,自己把握吧。

一般就是从自己的学业表现、荣誉与奖项、项目与比赛、研究志向(感兴趣的方向、目标等)来介绍。

英语口语

问题列表

  • 大学的课程最喜欢哪门?为什么?

  • 介绍你的家乡

  • 你在学DS(某门课程)过程中遇到什么阻碍?

  • 你觉得最难的科目?

  • 你说一下什么课程最重要?

  • 本科什么专业?

  • 你未来想做什么工作? 未来计划?

  • 老师先后问从软件工程、操作系统、大数据这三门课程学到什么?

  • 为什么考USTC?

  • 你对USTC有什么了解?

  • 研究生期间有什么计划吗

  • 听英语翻译成中文:python是一门面向对象的语言

  • 翻译一下句子 “C语言是一门面向过程的语言” C is a procedure-oriented language.

    C primer plus is an object-oriented language.

  • 网络的质量有哪些指标评价(英语问的)

  • 介绍一下自己的学校

  • 介绍自己的本科城市

  • 用英语介绍一下毕设

  • 用英语介绍一下你的项目

  • 你说一下你课程中做过的设计

  • 介绍一下自己的获奖经历

  • 说一下你参加过的比赛

  • 你提到你获过一些荣誉,这些荣誉分别是什么级别的?

  • 你的专业排名是多少?

  • 你怎么理解团队精神?

  • 如何描述自己?

  • 喜欢读什么书?

如果自我介绍中没有提到的或者没有讲清楚的,一般老师就会往这个方向问。

部分回答

下面是我当时准备的一些回答:

介绍家乡

  • Could you give me a brief introduction about your hometown?

Hefei, the capital of Anhui Province, is an ancient city with a history of more than 2,000 years and a new city that flourished after the birth of New China.

In ancient times, Hefei is also known as Luzhou, which is the hometown of Bao Zheng.

Nowadays, Hefei is a city where industry, science and education go hand in hand.

It is also a nice place to live in, because has four distinct seasons and a mild climate.

学习相关

  • Which course do you like best? And why?

My favorite course is design and analysis of algorithms.

It introduces some advanced concepts and algorithms, such as dynamic programming, Greedy algorithm. I become familiar with fundamental data structures and the description of algorithms in both functional and procedural styles. The teacher has a strong responsibility.Besides, it stimulated my interest in programming, and helped me learn a lot of practical skills.

  • What do you think is the hardest subject? Which subject do you think is the most difficult?

The Principle of Computer Organization. It is difficult for me to understand how hardware is running.

  • What course do you think is the most important?

I think the most important course is data structure. Just like a car mechanic needs the right tool to fix a car and make it run properly, a programmer needs the right tool (algorithm and data structure) to make the software run properly.

  • Where did your grades rank in your major?

I exactly ranked 17th among 170 students of the same major.

考研目标

  • Why did you choose our university/USTC?

The University of Science and Technology of China (USTC) is a prominent university in China and enjoys an excellent reputation worldwide.

  • What do you know about USTC?

I was initially attracted by your university’s high reputation. After consulting with several friends who have studied at your university, I was even more impressed by the university’s strong academic atmosphere and the professors’ sense of responsibility, and all of which strengthened my determination to continue my studies at your university.

  • Why do you choose to further your study instead of going to work after graduation?

During my undergraduate studies in the past there and half years, I gradually realized that the knowledge and skills that acquired in college would not enough to fulfill my personal goals in society. Moreover, my desire for knowledge grew as I dug deeper into some fields, such as machine learning. Therefore, I feel it’s necessary for me to further my study instead of going to work after graduation.

  • What is your plan in the postgraduate study?

Firstly, I will work hard to learn theoretical knowledge, constructing a solid foundation for my further study; Secondly, I would like to do some practical work. Through this, I can get some skills that cannot be acquired from the textbooks. I hope that in the next three years, I can improve my ability of learning and independent thinking, and have valuable academic outputs. If possible, I am also willing to fight for a Doctor’s Degree.

本科院校

  • Please introduce your university.

My university is XXXX University.

The school management is very student friendly; a range of campus activities are available; The teachers there are also well qualified and helpful. They adopt a teaching style of free exploration, and often arrange seminar for us to broaden our knowledge and perspective. I think the most distinctive rule is that every student must learn to swim or they can’t get their diploma. I really appreciate the resources and opportunities provided by our university.

实践经历

  • What projects did you do at university?

My graduation project is XXXX. The purpose of this project is to ....

专业词汇

  • 课程名称
名称 英文 分数
算法设计与分析 Design and Analysis of Algorithms 95
数字图像处理 Digital Image Processing 81
模式识别 Pattern Recognition 91
实用计算机英语 Practical Computer English 90
大数据技术基础 Big Data Techniques 90
线性代数 Linear Algebra 89
离散数学 Discrete Mathematics 91 94
数据结构 Data structure 90 77
编译原理 Compiler Principle 88
操作系统 Operating System 88 88
数据库原理 The Principle of Database System 82 85
软件工程 Software Engineering 85
计算机组成原理 The Principle of Computer Organization 69 85
计算机网络 Computer Networks 88
面向对象程序设计 Object Oriented Programing 93
计算机系统结构 Computer Architecture 88
  • 热门研究方向
分布式计算 distributed computation
物联网 Internet of things
大数据 Big data
人工智能 Artificial intelligence
高性能计算 High performance computing
云计算 Cloud computing
嵌入式计算 Embedded computing
并行 Parallel
机器学习 Machine learning
数据挖掘 Data mining
计算机视觉 Computer vision
网络安全 Cyber security
  • 专业词汇
面向对象编程语言 Object-oriented programming language
编译器 Compiler
关系型数据库 Relational Database
动态规划 Dynamic Programming
贪婪算法 Greedy Algorithms
分治 Divide and conquer

专业问题

基本原则是:科大重视本科成绩单,重视对知识的应用理解,面试经验只作参考,请勿死记硬背。一般老师会先问你擅长哪些科目,然后会提问你擅长科目的一些问题。科班的话有的组还会问编译原理数据库离散数学啥的。我是根据自己本科学过的课程以及408准备的,结果就问了我数据结构里面排序和图的知识。

程序设计

  • C和C++的区别与联系? 联系:C++是C的超集,兼容大部分C的语法的结构。区别:C面向过程,C++面向对象。C和C++动态管理内存的方法不一样,C是使用malloc/free函数,而C++除此之外还有new/delete关键字。C++添加了类、函数重载、引用等新的语法。

  • 面向对象与面向过程的区别?面向过程分析问题的解决步骤,然后用函数把这些步骤实现,在一步一步按顺序调用函数。面向对象将问题抽象成一个一个对象,每个对象都有各自的功能和属性,通过提供的功能接口解决问题。

  • 面向对象的三大特性/三个基本特征:封装、继承、多态

  • 跨平台性?即不依赖于操作系统,也不依赖硬件环境。一个操作系统下开发的应用,放到另一个操作系统下依然可以运行。

  • C++多态是什么,有什么优点?多态以封装和继承为基础,静态多态(编译期):函数重载、运算符重载、模板;动态多态(运行期):虚函数。进行代码复用,提高了程序的可扩展性。

  • 动态多态的三个条件是什么? 继承,方法重写,父类 引用指向子类的对象。

  • C++中的代码复用机制?继承:子类继承父类中的成员变量和函数;组合:一个类将另一个类的对象作为其成员多态:模板(类模板和函数模板)

  • 虚函数有什么用?用于多态的实现。

  • 继承和组合的区别?一个类将另一个类的对象作为其成员称为组合;一个类将另一个类作为其父类称为继承。继承与组合都是面向对象中代码复用的方式。在继承中,父类的内部细节对子类可见,其代码属于白盒式的复用,而组合中,对象之间的内部细节不可见,其代码属于黑盒式复用。继承在编码过程中就要指定具体的父类,其关系在编译期就确定,而组合的关系一般在运行时确定。继承强调的是is-a的关系,而组合强调的是has-a的关系。

  • 重载和覆盖的区别?重载要求函数名相同,但是参数列表必须不同;覆盖要求函数名、参数列表、返回值必须相同。 重载描述的是同一个类中不同成员函数之间的关系;覆盖是子类和基类之间不同成员函数之间的关系。 重载的确定是在编译时确定,是静态的;虚函数则是在运行时动态确定。

  • C++头文件和命名空间?头文件用于预编译,命名空间是防止变量名重复。

  • extern?

  • inline? 声明内联函数,原地展开,不需要调用函数,以空间换时间。

  • struct 和class区别联系?struct 更适合看成是一个数据结构的实现体,class 更适合看成是一个对象的实现体。最本质的一个区别就是默认的访问控制,struct 是 public 的,class 是 private 的。

  • const的用法?修饰普通变量、成员函数、成员函数参数。

  • static的用法?static 修饰的静态全局变量的时候,这个全局变量只能在本文件中访问,不能在其它文件中访问。static 修饰一个函数,则这个函数的只能在本文件中调用,不能被其他文件调用。static 修饰的静态局部变量只执行初始化一次,而且延长了局部变量的生命周期,直到程序运行结束以后才释放。static 修饰的变量存放在全局数据区的静态变量区,包括全局静态变量和局部静态变量,都在全局数据区分配内存。未被初始化的变量自动初始化为 0。

  • C的union和struct的区别?一个 union 可以有多个数据成员,但是在任意时刻只有一个数据成员可以有值。当某个成员被赋值后其他成员变为未定义状态。节省空间。

  • C语言里面main函数有什么参数?int argc, char ** argv。 分别有什么作用?argc 是指命令行输入参数的个数,argv存储了所有的命令行参数。

  • 编译的含义;C语言我写的十行代码只有1k,为啥编译之后目标文件有几百k?

  • 传值和引用的区别,指针和引用的区别,那在作为函数形参的时候,两者有什么区别呢?

  • 函数调用过程,传地址为什么实参会发生改变?还有哪些变量是可变的,哪些不可变,这些对编程有什么作用?

  • C++中的值传递和引用传递的区别,在汇编语言上是相同的吗?

  • 值传递与地址传递?

  • C语言怎么统计一个函数被调用次数?全局变量或者函数内的静态局部变量作为计数器。

  • 给你两个变量,要求在不使用第三个变量的情况下交换这两个变量的值?不用额外空间实现两个变量值互换?

    1:a = a + b ; b = a – b; a = a – b ;但可能会溢出

    2:a = a ^ b ; b = a ^ b; a = a ^ b;三次异或

  • 内存泄漏和内存溢出是什么?内存溢出:存储int类型数据的存储空间,但是你却存储long类型的数据,那么结果就是内存不够用;而内存泄露:程序运行分配的对象回收不及时甚至于没有被回收。内存泄漏堆积后的后果就是内存溢出。

  • 内存溢出原因? 代码中存在死循环或循环产生过多、未及时回收内存导致内存泄露,进而导致内存溢出、参数值设定过小(比如数组大小);

  • 内存泄露怎么解决?及时回收内存,申请与释放要成对出现。

  • 解释下C语言中局部变量和全局变量? 在函数或块内部(循环体内等)的局部变量;在所有函数外部的全局变量。全局变量保存在内存的全局/静态存储区(保存静态变量和全局变量);局部变量保存在栈区,只有在所在函数被调用时才动态地为变量分配存储单元。

  • C语言中局部变量以及其存储位置?保存在栈区。

  • C语言里面全局变量与静态变量?

  • C语言内存分配结构有哪几个区,静态变量在什么区,局部变量属于什么区?

  • C语言的内存相关操作处理,尤其是缓冲区异常操作处理?

  • C语言异常的关键字?try catch

  • 递归函数的优缺点?

  • 动态链接和静态链接? 静态链接是由链接器在链接时将库的内容加入到可执行程序中的做法(生成的可执行文件体积较大,包含相同的公共代码,造成浪费)。动态链接把链接这个过程推迟到了运行时再进行,在可执行文件装载时或运行时,由操作系统的装载程序加载库。这里的库指的是静态链接库,Windows下以.lib为后缀,Linux下以.a为后缀。这里的库指的是动态链接库,Windows下以.dll为后缀,Linux下以.so为后缀。

  • .h与 .cpp的区别?头文件和源文件。头文件声明,源文件定义。把声明放到头文件中方便引用。

数据结构

线性表

  • 如何快速找到一个单链表的三分之一处?

  • 数组做增减不方便,还有其他数据结构吗?链表。

  • 循环链表队列只设置一个指针,应该放在头还是尾?尾指针是指向终端结点的指针,用它来表示单循环链表可以使得查找链表的开始结点和终端结点都很方便;放在尾部,入队O(1),出队O(1); 放在头部,入队O(n),出队O(n)

  • 线性表的顺序结构是什么存储方式?顺序存取的方式,存储在连续的物理空间中。

二叉树

  • 二叉树里面有多少个空指针?n个节点的话,每个节点都有两个指针,共2n个,出来根节点以外,n-1个节点都被指针指向,所以是n+1个空指针。

  • 有什么方法可以加快二叉树的查询?线索二叉树.。

  • 用数据建立一棵排序二叉树?

  • 二叉排序树查找的时间复杂度,如果是平衡二叉树又是什么?

    答:平均查找长度为O(log n),最坏情况下变成斜二叉树,O(n); 平衡二叉树左右子树高度差不超过1,平均查找长度为O(log n)

  • 二叉排序树是什么,删除一个节点怎么操作?

    答:左子树上所有值小于根节点值,右子树所有值大于根节点的值;删除:分三种情况,叶子节点;左子树为空,用右孩子节点填充;右子树为空,用左孩子填充;左右节点都存在,从右子树上找中序第一个孩子填充。

  • 二叉查找树,改进的AVL平衡树,怎么进行调整?答:四种旋转方式,LL,RR,LR,RL

  • 哈夫曼编码以及应用? 答:哈夫曼编码得到总长度最短的二进制前缀编码;用于数据的压缩和解压。

  • 什么树是哈夫曼树?答:带权路径长度最小的二叉树成为哈夫曼树。

  • 哈夫曼树,哈夫曼编码,为什么哈夫曼树权值最小,属于什么算法?答:贪心算法。只要把权值小的叶子节点,放在更低的层次,就可以使总的带权路径长度最小。

  • 可变长度编码:出现频率高的使用短编码,频率低的使用长编码。

  • 前缀编码:需要保证长编码不与短编码冲突。

  • 哈夫曼怎么保证编码不冲突?所有带有权值的节点都被构造为了叶子节点,从根节点开始走到叶子节点而得出的编码就不会出现一个编码是另一个编码的前缀的情况。

  • 设计一种数据结构以及相关的操作来找出树叶子结点的个数?队列,层序遍历。

  • 怎么统计二叉树有几个结点?遍历。

  • 树的深度优先遍历和广度优先遍历分别用了什么数据结构?为什么要用栈跟队列?栈,队列。

  • 最小生成树算法?答:普里姆、克鲁斯卡尔

  • 对这两个算法做比较,以及这两个算法采用的数据结构是哪些?

    普里姆算法:选择一个与当前顶点集合距离最近的顶点加入集合。时间复杂度O(|v|^2),适用于边稠密图。数据结构:小顶堆

    克鲁斯卡尔算法:选择最短的边,判断加入图中是否成环,如果不成环加入,否则判断下一个。时间复杂度O(|E| log |E|),适用于顶点稠密图。数据结构:并查集

  • 迪杰斯特拉除了迪杰斯特拉算法还有啥?

    迪杰斯特拉是荷兰人。

    提出“goto有害论”; 与另外两个科学家合著的《结构化程序设计》影响了此后大部分程序设计语言,包括 C 和 Pascal。

    提出信号量和PV原语; 首先定义了互斥和死锁的概念并提出了解法。

    提出了银行家算法。他发表的关于并发程序控制的论文开创了分布式计算和并发计算的领域。

    创造Dijkstra最短路径算法;

  • 权值都为1的图 怎样得到两个顶点的距离?广度优先遍历。

  • 给你一个所有路径权值相等的图,你要怎么来求它的单源最短路径?广度优先遍历。

  • 找无向无权图的两点之间最短路径有哪些方式?广度优先遍历,迪杰斯特拉算法。

  • N 顶点的完全图 用深度和广度优先遍历所得到的 生成树的度分别是多少?广度优先遍历: N-1; 深度优先遍历:2

  • 完全图用DFS和BFS生成的生成树的高度差?DFS: N, BFS:2

  • 怎么判断有向图有没有回路?

    拓扑排序:能生成拓扑序列则说明无回路,否则有回路;

    深度优先遍历:一条深度遍历路线中如果有结点被第二次访问到,那么有环;并查集。

  • DFS路径唯一吗?图的邻接矩阵表示唯一,但是图的邻接表表示不唯一;所以基于邻接矩阵遍历的DFS路径和BFS路径唯一,基于图的邻接表则不唯一。

  • 无向连通图最多几条边,最少几条?最多:完全图,最少:n-1条。

  • 图的存储方式有哪些?邻接矩阵和邻接表分别用于什么样的图?

  • 说一下图的两种存储方式以及增删结点的过程。邻接矩阵:增加或者删除节点不方便,要修改整个数组。邻接表:增加删除节点方便。

  • 无向图、有向图的组织结构是怎样的?(即是怎么存储的)

  • 深度优先遍历的序列确定,如果确定好了存储方式,假如选定好具体的邻接矩阵和邻接表,遍历的序列还唯一吗,唯一。

  • 讲讲强连通分量和强连通分量结点?强连通:在有向图G中,如果两个顶点v1,v2有一条从v1到v2的有向路径,同时还有一条从v1到v2的有向路径,则称两个顶点强连通。如果有向图G的每两个顶点都强连通,称G是一个强连通图。连通分量:有向图的极大强连通子图。

  • 围棋棋盘可以用什么数据结构来实现?二维数组(???)

查找

  • 折半查找过程+复杂度?折半查找适用于有序的顺序表,O(log n)

  • 二分查找的时间复杂度和适用范围?必须是有序的顺序表。不适用于链式存储的数据。

  • 二分查找的条件,链式结构要如何二分查找?必须是有序的顺序表。

  • 什么是分块查找?复杂度?

  • 哈希表的功能?根据关键字得到存储地址

  • 哈希表存在的问题?关键字得到存储地址相同,冲突

  • 哈希表 解决冲突的方法?开放地址法(线性探测,二次探测,再散列);拉链法。

  • 开放地址法如何删除关键字?做个标记逻辑删除,直到有下一个元素插入才能将其物理删除。

  • 那之后再插入新的关键字遇到之前逻辑删除的那个空间如何处理?替换成新插入的元素。

  • 最快的查找算法?二分查找(折半查找、二叉排序树)。

排序

  • 快速排序的原理? 基于分治法,在排序表上任意取一个元素作为基准,通过一趟排序将排序表分为两个部分,左边部分小于这个基准,右边部分大于这个基准,将这个基准元素放在中间的位置,这个位置就是基准最终的位置,然后递归调用,分别对左边和右边的元素重复上述步骤,直到每个部分只有一个元素或者为空。

  • 快速排序最好时间复杂度: O(n log n) 每次划分都能平衡划分

  • 最坏情况时间复杂度?O(n2) 每次划分都分成0,n-1;

  • 快排平均时间复杂度的系数:1.39。

  • 为什么快排最后要退化成O(n²)还叫快排? 快排比较的基本都是邻近的元素,cache局部性较好。

  • 为什么快排平均性能最好?快排比较的基本都是邻近的元素,cache局部性较好,所以是内部排序中平均性能最好的。堆排比较的几乎都不是相邻元素,对cache极不友好。归并排序空间复杂度O(n), 适用于外部排序。

  • 有没有什么排序平均比快排要快的?基数排序。线性时间复杂度。

  • 快排如何提高效率?https://blog.51cto.com/u_15127595/4213608

    a.主元的选取随机化,可以降低快排达到最坏时间复杂度的可能性。

    1. 三数取中。在a[l],a[( l + r )/2],a[r]三个数中选取中间大的数作为主元,比主元的随机化更有优势。

    2. 减小递归的栈深度——小区间优化。在子区间的长度小于16时,进行插入排序,减小递归的栈深度。

  • 最坏情况时间复杂度,什么情况是最坏的,那在这种最坏的情况怎么样做可以提高效率?主元随机化。三数取中。

  • 标准库中的sort,是通过先快排,递归深度超过一个阀值就改成堆排,然后对最后的几个进行插入排序来实现的。

  • 常用的排序有哪些?答:快速排序,堆排序,归并排序。

  • 时间复杂度为O(n log n) 且与初始排列无关的排序有哪些? 堆排序,归并排序

  • 基于比较的排序算法的下界?对于待排序的n个元素,其所有可能的排序种数为 n!。决策树 log n!,渐进下界 (n log n)。

  • 堆排序过程?建堆:从序号为n/2的结点向0调整,自上向下调整。全部调整后,根节点的值即为最小/大值。

  • 堆排序插入元素?插入到序列的最后,向上调整。

  • 堆排序删除元素?将根节点与最后的结点交换,然后从根节点向下调整。

  • 说一下堆排序复杂度?空间复杂度:O(1);时间复杂度:主要在初始化堆过程和每次选取最大数后重新建堆的过程。建堆时间:O(n); 更改堆元素后重建堆时间O(n log n)。

  • 稳定性排序算法和不稳定排序算法各举一例。稳定:归并排序,不稳定:快速排序、堆排序。

  • 给你一堆无序的数据,如何才能高效的找到其中间值?找第k大的值,k=n/2。快速排序,堆排序。

  • 既然基数排序是线性的,为什么很多数据的时候不选择基数排序?

  • 如何评价快排和基数排序?

  1. 基数排序的时间复杂度看似O(n),但它每次排序都是对整个数组的处理,相对快排来讲,cache局部性不好。

  2. 基数排序一般需要额外的存储空间:顺序队列实现需要O(n)的元素空间,链队列实现需要O(n+2d)个指针空间,计数实现也需要O(n)的元素空间。

  3. 对于要排序的数据要求严格

  • B树在实际应用中为什么会设置很大的阶数,如1000阶?B树的应用:数据库和文件系统。它的设计思想是,将相关数据尽量集中在一起,以便一次读取多个数据,减少硬盘操作次数。B树算法设置很大的阶数,层数就会变少,减少磁盘读取次数,从而加快存取速度。

  • B+树的应用: MySQL使用B+树作为索引。关键字和记录分开,非叶子节点不存储数据,节点小,磁盘I/O次数就少。可以顺序查找,也可以索引查找。

其他

  • 数据结构的逻辑结构有哪些?集合结构、线性结构、树状结构和网络结构

  • KMP算法相关,为何相比常规会有优化

计算机组成原理

  • 组成原理与微机原理、计算机体系结构的区别? 组成原理是让你从整体上介绍计算机是怎么工作的,内容上侧重于计算机的几大组成;计算机体系结构是对组成原理的抽象化与进一步的理论化,考虑的是软硬件的功能分配。微机原理是计算机组成的具体实现,一般选择某个架构的计算机具体介绍,比如CPU的具体结构,引脚作用,寄存器每个位的作用,偏硬件。

  • 计算机组成、计算机结构、计算机技术,谈谈你对这三者的理解?

  • 什么是指令系统?指令系统是指计算机所能执行的全部指令的集合。

  • CISC和RISC是什么?两个的具体应用举个例子?8086是哪个?CISC: x86. RISC: MIPS, ARM. X86架构于Intel 8086 中央处理器中首度出现, 成为了个人计算机的标准平台,成为了历来最成功的 CISC 架构.

  • 说一下RISC是什么?以及RISC/CISC的区别?

  • 说说指令流水线?指令流水线是为提高处理器执行指令的效率,把一条指令的操作分成多个细小的步骤,每个步骤由专门的电路完成的方式。

  • 计算机最高几级流水线??

  • 超长指令字?编译程序挖掘并行性,将多条并行的指令组合成一条多个操作码字段的超长指令字,需要多个处理部件。

  • 超标量流水线?一个时钟周期并行执行多条指令,需要多个功能部件。编译优化,提高指令并行度。

  • 超流水线技术?一个时钟周期再分段,一个时钟周期内一个功能部件使用多次。

  • 乱序发射 与乱序执行?

  • 分支指令的CPU处理全过程,用到了CPU里哪些部件?PC记录下一条指令地址,IR, MAR , ALU,ACC

  • 怎么解决分支指令在流水线里的控制相关?对转移指令进行分支预测,尽早生成转移目标地址。两手准备(预取成功和不成功两种控制流方向上的目标指令)

  • 流水线什么时候可以中断?

  • I/O阻塞和I/O非阻塞的区别?阻塞:需要等待I/O完成以后才能做别的事情。

  • 通道?简化版CPU, 主机执行I/O命令时,启动相关通道,让通道去执行通道程序。

  • DMA和中断的区别是什么?中断是程序的切换,需要保护和恢复现场,DMA只有在处理前和处理后才需要CPU干预。中断只能在一条指令执行结束以后才能响应,DMA可以在每个机器周期结束时响应。中断传送过程中需要CPU响应,DMA传输过程中不需要CPU干预,可以快速传输大量数据。中断还有对异常事件的处理能力等,靠程序传送,DMA只是传送数据块,靠硬件传送。

  • DMA在预处理阶段的工作?I/O设备向DMA发送请求,DMA向CPU发送总线请求。

  • 说说中断?【中断的过程】单级中断:中断源发出中断请求,中断判优,CPU响应中断(关中断,保存断点,引出中断服务程序),中断服务程序(保存现场和屏蔽字、执行、恢复现场),开中断,中断返回。

  • 中断上下文内容保存在哪里?用户可见的工作寄存器内容,保存在栈中。

  • 中断屏蔽字存放到哪里?中断屏蔽字被存储在CPU里面的中断屏蔽字寄存器中。

  • 中断优先级如何处理?硬件实现:硬件排队器。软件实现:查询程序。

  • 中断保护机制,进程死循环时怎么办?

  • 计算机存储有哪些层次?

  • TLB,Cache的作用?

  • 局部性是什么?什么时候存在时间局部性什么时候存在空间局部性,举例一下

  • 之后就问那在设计计算机的指令集硬件什么的方面如何使用局部性

  • 老师就问cache的映射算法有什么?全相联映射、直接映射、组相联映射

  • cache的读取写入策略有什么?写命中:写回法、写直通法;写不命中:写分配、非写分配。

  • cache命中率和什么有关?cache容量、cache块、映射方法、替换算法。

  • cache命中率和cache的容量有什么关系?容量越大,命中率越高。

  • cache命中率和cache块的大小有什么关系?对于给定的Cache容量,当块大小增加时,命中率开始时处于上升趋势,后来反而会下降。因为程序局部性原理,增加块大小增加了利用空间局部性的机会;另一方面,在容量一定情况下,增加块大小会减少总的块数目,会增加冲突失效。

  • cache里LRU怎么实现?

  • 虚拟存储和高速缓存的结构和各自的作用?

  • Cache与虚拟存储器的不同?cache是为了解决系统速度问题,虚拟存储器是为了解决主存容量不够的问题。Cache有硬件实现,对所有程序员透明,虚拟存储器是由OS和硬件共同实现,对应用程序员透明。Cache不命中可直接访问内存,但是虚拟存储器不命中只能调入主存后再访问,对性能影响更大。

  • 所谓的命中率是什么?访问cache有效的次数除以总次数。

  • 指令执行的步骤有哪些?取指、译码、访存、执行、写回

  • 微程序控制器的原理?一条指令分为多个执行步骤,每个步骤对应一段操作,把这个操作作为一段微程序存入控制存储器,这样执行的时候就可以通过查询控制存储器生成操作信号序列。

  • 指令周期的阶段?取指周期,间指周期(取操作数),执行周期,中断周期。

  • 每个阶段什么时候可以有中断?中断只能在一条指令执行结束(中断周期)以后才能响应。

操作系统

  • 操作系统有什么功能?对计算机资源管理。进程管理(处理机资源)、存储器管理、文件管理、设备管理。

  • 系统调用?操作系统向用户提供的一系列接口,凡是与计算机资源有关的操作,用户必须通过系统调用向操作系统提出服务请求,让操作系统代为处理。

  • 库函数?部分库函数是对系统调用的封装,部分库函数不使用系统调用。

  • 系统调用和函数调用谁的开销大?普通的函数调用一般只需要几次寄存器操作,如果有参数的话,再进行几次用户栈操作,用户栈局部性较好,可能也不需要进行内存I/O。而系统调用要先从用户态切换到内核态,内核态的栈用的是内核的栈,所以还要进行栈的切换,一定程度上会破坏程序局部性,所以导致cache、TLB缓存命中率都可能下降。还有额外的权限校验、有效性检验等,导致系统调用开销更大。

  • 系统调用和函数调用哪个速度快?上题。

  • 操作系统里线程的类别,底层怎么实现的?用户级线程:线程的管理由应用程序完成;内核级线程:线程的管理由内核完成。组合形式。

  • 实时系统和Windows的分时系统有什么区别,在硬件上呢?实时系统:保证高可靠性;分使系统:用户交互。

  • Linux虚拟地址空间?执行一个程序时,操作系统创建一个独立的虚拟地址空间,但是并不设置与物理内存的映射关系,这些映射关系等到后面程序发生页错误的时候再进行设置;虚拟地址空间通常与操作系统的位数有关,比如32位系统就是4GB,其中一部分是内核区域不能被使用,还有被其他程序占用的部分,所以进程实际能使用的内存要比虚拟内存少,当发生缺页且无空闲物理块时,就需要发生替换。

  • 死锁的定义?在多道程序系统中,程序并发执行,多个进程竞争资源造成相互等待,都无法继续进行下去。

  • 死锁的4个条件?互斥条件、不可剥夺、循环等待、请求并保持。

  • win10里设置有死锁解决办法吗?猜测任务管理器,直接结束任务。

  • 微内核、微服务?微内核:将内核中最基本的功能(如进程管理)保留在内核,其他不需要在核心态运行的功能移到用户态执行,降低内核设计的复杂性。其他作为服务程序,相互独立,通过内核进行通信。

  • 什么是大内核和微内核?大内核:主要功能模块都运行在核心态,紧密联系,设计复杂。

  • Linux 用的是哪种内核?大内核。

  • PV操作、生产者消费者问题?

  • 同步机制应该遵循的原则?空闲让进、忙则等待、有限等待、让权等待。

  • 同一进程内的两线程对一个初值为0的共享变量分别进行10次加1操作,在不采取同步互斥措施的情况下,共享变量的最终值是多少?(老师说:2~20)

  • 目录与文件的区别?

  • 目录文件的内容?文件名+索引节点指针

  • 信号量的作用? 同步与互斥

  • FAT,Ext2名词解释,磁盘分区 FAT:文件分配表

  • 银行家算法的缺点?该算法要求请求资源的进程数数保持固定不变,这在多道程序系统中是难以做到的。开销大。

  • 说一下缺页中断?CPU响应中断、从外存中找到页面,判断内存是否满,如果满的话执行替换算法,将其中一页换出,不满的话启动I/O将页面调入内存,修改页表,并将此页表项写入TLB。

  • 如果让你设计一个操作系统你有什么思路?

  • 工作集算法的缺点?

  • 并发有哪些?

  • 内存管理方法?连续分配方式:固定分区分配、动态分区分配。非连续分配方式:分页存储管理方式、分段存储管理方式。Linux用的是哪种?Linux采用段页式内存管理。

  • 分页系统怎么将逻辑地址转化为物理地址? 将逻辑地址分为两个部分,页号和页内偏移量,通过查页表将逻辑页号转换成物理块号,与页内偏移拼接在一起就是物理地址。

  • 快表、页表?

  • 页表,多级页表?

  • 段表和页表区别?段表项:段号、段长、段内偏移。页表只需要给出:页号和页内偏移。

  • 反表?虚拟地址太长,页表太大。同时查找整个表,得到虚拟地址对应的物理帧。

  • 页表会加速进程运行吗?在不分页的情况下,指令首先通过在主存取指令,从而访问内存一次,有了分页机制后,会因为要多次访问页表而引起更多次内存访问。

  • 如果给进程分配分区的过程中,产生很多细小的外部碎片,怎么解决?紧凑技术

  • 紧凑技术的具体原理是什么?操作系统对进程进行移动和整理,需要动态重定位寄存器的支持。

  • 内存里的LRU怎么实现?使用CLOCK算法或其变体。

  • CLOCK置换算法?简单CLOCK置换算法:给每个物理块加一个使用位,首次装入主存,置为1。需要替换时,循环扫描所有的候选物理块,碰到使用位1将其置0,扫描下一帧,碰到0将其作为替换的块。

  • 线程和进程区别?线程时独立调度的基本单位,进程时分配资源的基本单位,线程不拥有系统资源,但是可以共享其所属进程的资源。进程相互独立,进程中的线程对其他进程不可见。进程切换开销大,线程切换开销小。

  • 进程间如何通信?管道通信、共享存储等。

计算机网络

  • 计算机网络中的四种延迟分别是什么?发送时延、传播时延、处理时延、排队时延

  • 拥塞控制和流量控制的区别?拥塞控制是作用于网络的,它是防止过多的数据注入到网络中出现网络负载过大的情况;流量控制时作用于发送者的,控制发送者的发送速度,使得接收者来得及接收。

  • 网络层和传输层是干什么的?网络层:为不同网络上的主机提供通讯服务。传输层:负责主机间两个进程的通信。

  • 计算机网络分为哪两个部分?边缘,核心。

  • TCP/IP模型? 从低到高分为网络接口层、网际层、传输层、应用层。TCP/IP模型可靠性是端到端的问题,所以网际层是无连接的,传输层支持无连接和面向连接两种方式。

  • OSI参考模型?七层模型。物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。在网络层支持无连接和面向连接的通信,传输层仅有面向连接。

  • TCP的网际接口层对应哪两层?数据链路层和物理层

  • 802.11协议?无线局域网的协议,MAC层使用CSMA/CA协议。

  • CSMA/CA、CSMA/CD协议及其区别?CD:适用于以太网,CA适用于无线局域网。CSMA/CD:可以冲突检测但是无法避免。CSMA/CA发送数据时无法检测冲突,所以只能尽量避免。

  • 数据链路层的可靠性?

  • 网络中的集线器和网桥的区别?

  • 路由器的作用?收集网络拓扑信息并动态形成路由表。根据路由表转发IP数据包。隔离广播域。

  • 外部路由协议和内部路由协议有哪些?内部路由协议:RIP,OSPF。外部路由协议:BGP。

  • ICMP协议的作用?作为IP数据报的数据,让主机或路由器报告差错和异常情况,提高IP数据报交付成功的机率。

  • ICMP是从哪里发送给哪里的,需不需要发送给主机?目标主机或到目标主机路径上的路由器发送给源主机,报告差错和异常情况。

  • PING :使用了ICMP的会送请求和回答报文。

  • IP数据报最小长度多少?IP数据报的最大长度?总长度格式:16位,以字节为单位。

  • 实际中IP数据报可以达到这么大的长度吗?IP数据报的最大长度受数据链路层的最大传送数据单元制约。比如以太网1500字节。

  • ipv4用完解决方法?ipv6;NAT技术:小的局域网使用一个网段的私网地址,与外界连接再换成公网地址。CIDR:在变长子网掩码的基础上提出的一种消除传统ABC类网络的IP地址划分方法。

  • 什么是CIDR,有什么功能?CIDR:在变长子网掩码的基础提出的一种消除传统ABC类网络的IP地址划分方法。使用网络前缀代替子网的概念,可以按照实际需要划分更加合理的IP地址空间,提高地址空间的利用率。将网络前缀相同的IP地址进行路由聚合,减少路由项,提高网络性能。

  • 交换机和路由器的区别?交换机是数据链层设备,隔离冲突域,不能隔离广播域。路由器是网络层设备,隔离广播域。

  • ARP协议是什么?ARP协议及其应用?地址解析协议。解决同一个局域网下的主机或路由器IP地址和MAC地址的映射问题。

  • NAT?私网IP与公网IP转换。

  • 流量控制的方法?停止-等待协议。滑动窗口协议。

  • 停等协议的主要作用?发送窗口大小如何设置,发送窗口大小确定后发送方一次能够发送的数据量受什么限制

  • 滑动窗口原理?发送端维持一个发送窗口,接收方维持一个接受窗口。发送窗口用来进行流量控制,表示还未收到对方确认信息的情况下最多还可以发送的数据帧。接受窗口用于控制收到数据帧是否能接受,如果在此窗口内就可以接受,否则丢弃。

  • 滑动窗口的作用?流量控制。保证接受的顺序正确。

  • 滑动窗口发送端怎么触发?收到确认则可以向前滑动。用数据结构怎么描述或者实现?链表?

  • 拥塞控制?

  • 介绍两个使用了广播技术的协议?IGMP:主机只发送一份,只在路径分叉时才复制转发。

  • 组播与广播?组播:一对一组。广播:一对所有,会被局限在局域网内,因为路由不会转发。单播:一对一。

  • 广播的实际应用?视频会议、直播等。

  • 同步传输和异步传输?

  • 串行并行传输优缺点?从原理上讲,在相同的工作频率下并行传输的传输速度远比串行传输大,但并行线路有一些难以克服的缺点,如:成本高、占用空间大、信号间干扰大。无法用于长距离通信,只适合于短距离、要求传输速度快的场合使用,如计算机内部的总线。

  • TCP和UDP中,为什么TCP是可靠的?使用了流量控制和拥塞避免。

  • 发电子邮件的协议和过程?SMTP发送邮件,POP3拉取邮件。

  • DNS的过程?递归查询;递归与迭代相结合。

  • DNS功能? 域名转换成IP。

  • FTP端口号?21控制端口,20数据连接端口

离散数学

  • 问你个最简单的,为啥要叫离散数学?离散数学的研究对象不是连续变化的实数,而是整数、图和命题这样离散的不连续的对象。

  • 离散数学的学习内容?集合论、代数系统、图论、数理逻辑等。

  • 什么是集合?由离散个体构成的整体的称为集合,称这些个体为集合的元素。

  • 集合元素的性质?无序性、相异性、确定性、任意性

  • 什么是幂集?集合的全体子集构成的集合叫做幂集。

  • 什么是笛卡尔积?设有两个集合 A与 B,用 A与 B中的元素组成有序偶,以 A的元素作为有序偶的第一个分量,以 B的元素作为有序偶的第二个分量,用这种方式所组成的有序偶的全体构成一个集合,称为 A与 B的笛卡尔乘积。

  • 二元关系的定义?集合中的元素都是有序对或者这个集合是空集;

  • 等价关系和等价类的定义?设 R为非空集合 A上的一个关系,如果 R是自反的、对称的和传递的,则称 R为 A上的等价关系。A中所有与x等价的全体元素构成的子集称为等价类。

  • 偏序关系与偏序集?自反的、反对称的和传递的。

  • 集合、关系与函数之间的关系?在集合之上建立关系,关系建立集合与集合间的联系。函数是一种特殊的关系。

  • 单射、满射和双射的概念?单射:不同的x对应不同的y。 满射:对任意一个y都有x与之对应。双射:单射+满射(一一对应)

  • 代数系统的定义?非空集合S加上 若干个集合S上的一元或二元运算构成一个代数系统。

  • 子代数系统?一个代数系统V=<S,f1….> 集合B是集合S的非空子集,B对这个代数系统的所有二元运算都是封闭的,那么称B加上这些运算是代数系统V的一个子代数系统。

  • 典型的代数系统?半群、独异点与群、环与域、格与布尔代数。半群——代数系统由一个非空集合S加上一个二元运算,这个二元运算满足结合律。独异点——半群,且非空集合S中含有一个单位元。——具有单位元与逆元的半群。交换群/阿贝尔群:结合律,分配律。

  • 平面图?可以画在平面上,任意两边都不相交。

  • 什么是哈密顿图?能走出一条通过每个结点仅一次的回路。

  • 什么是欧拉图?能走出一条通过每条边仅一次的回路。

  • 欧拉公式:n – m + r = 2,n:顶点个数。m:边个数。r:面个数。

  • 命题?能够判断真假的陈述句。原子(简单)命题——不能再分解为更简单命题的命题。复合命题——由原子命题通过命题联结词构成的命题。

  • 命题联结词?非、合取、析取、等价、蕴含

  • 析取范式、合取范式?析取范式——有限个简单合取式构成的析取式;合取范式——有限个简单析取范式构成的合取式;

  • 主合取范式与主析取范式?主合取范式——构成的简单析取式都是极大项;主析取范式——构成的简单合取式都是极小项。

数据库

  • 怎么设计一个数据库?七个阶段:规划、需求分析、概念设计、逻辑设计、物理设计、实现、运行维护

  • 对于目前的复试面试系统如何设计数据库?

  • 数据库的发展阶段? 人工管理阶段、文件系统阶段、数据库系统阶段。

  • 数据库的种类?按照数据的保存格式进行分类:层次、关系(MySQL, Oracle Database、SQL Server)、面向对象、键值存储数据库(Redis)

  • Oracle是什么型数据库,Oracle数据库的特点?关系型数据库,多用户、数据完整性、安全性性能优越、支持分布式、跨平台。

  • 试述数据库系统三级模式结构,这种结构的优点是什么?外模式(单个用户使用的数据视图)、概念模式(全局数据视图)、内模式(数据视图的物理存储)。优点:保证物理数据独立性、逻辑数据独立性。物理数据独立性:如果数据库内模式要修改,只要修改模式/内模式的映像,概念模式尽可能保持不变。如果数据库概念模式要修改,只要修改外模式/模式的映像,外模式尽可能保持不变。

  • 数据库的两级映射?外模式/模式映像;模式/内模式映像。

  • 数据库外模式可以有几种?一对一还是一对多?一个数据库可以有多个外模式,一对多。

  • 常用的数据模型?概念数据模型:实体联系模型。结构数据模型:层次数据模型、网状数据模型、关系数据模型、面向对象模型、半结构化模型。

  • 最早的数据模型?层次数据模型。

  • 关系模型图灵奖获得者是谁?E. F. Codd (埃德加 • 科德)

  • 内连接与外连接?内连接的特性是只显示符合连接条件的记录,外连接必然会返回其中一张表的全部数据,哪怕不匹配。

  • 假如有上百个个人密码,数据库如何储存个人密码,不会泄露?

  • 数据库规范化设计理论?

    三个内容:数据依赖、范式、模式设计方法。

    目的:设计出合理的关系型数据库,解决关系模式数据冗余、异常、不一致问题。便于插入、删除和更新。

  • 范式的概念——关系数据库有多少范式,简述?关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)

  • 数据库的范式越来越高会产生什么影响?越高的范式数据库冗余越小。

  • 什么是基本表?什么是视图?两者的区别和联系是什么?基本表:实际存储在数据库中的表。视图:从一个或者多个基本表导出的表。视图是一个定义,是不存储数据的虚表,所有对视图的操作都要转换到基本表上。视图可以和基本表一样被查询,但是更新(增、删、改)操作会受到一定限制。

  • 视图不允许更新的几种情况?多个表连接操作导出的;导出时使用了分组和聚合操作;从单个基本表导出,但是不包含表的主键或者候选键。

  • 试述视图的优点?数据安全性、查询简化、逻辑数据独立性(应用建立在视图上,只要修改视图定义中的子查询部分,相当于映射部分,其他可以保持不变)。

  • 解释一下,数据库的索引?类似于字典的索引。

  • 索引所属的模式范畴?内模式

  • 存储过程?一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来调用存储过程。(类似于一段编译好的脚本)

  • 数据SQL语句底层执行?连接数据库、查询缓存、分析器(分析词法、语法)、优化器(使用哪个索引、多表关联时决定连接顺序)、执行器(验证是否有读写权限,有的话就调用存储引擎接口获取结果集合)

  • 对比 非关系型系统与关系数据库系统?RDBMS关注一致性(ACID模型),而NoSQL系统则关注可用性。关系型数据库通常是以表格形式存储数据,而NoSQL系统有多种存储方式,包括key/value存储(Redis)、文档存储(MongoDB)以及图存储(Neo4j)等。当数据达到一定规模时,关系型数据库易出现死锁等并发问题,导致其读写速度下滑非常严重。而NoSQL数据库结构简单、集成缓存能力,读写性能非常好。举例:金融业一致性重要,选择关系型数据库。购物网站、社交网站等对可用性要求较高,选择非关系型数据库

  • 数据库管理系统(DBMS)的主要功能有哪些?数据库定义(结构、约束);数据库操纵、数据库的保护、数据库的维护。

  • 数据库的保护:事务、恢复、并发控制、完整性控制、安全性控制

  • 事务的四大特性?原子性、一致性、隔离性、持久性

  • 完整性约束?域约束、基本表约束(候选键、外键、检查约束)、断言

  • 事务并发操作带来的三个问题:丢失更新、读脏数据、不一致分析

  • 处理并发问题的机制:封锁技术。排他性封锁(X锁),共享型封锁(S锁)

  • 封锁技术产生的三个问题:活锁、饿死、死锁。活锁——一个事务 一直得不到封锁机会;饿死——一直有事务加S锁,加X锁的事务加不上;死锁——两个或以上事务互相等待,导致任何一个都无法继续执行。

  • 数据库安全性控制的常用方法和技术?视图机制、授权子系统。

编译原理

  • 我看你学了编译原理,能跟我讲讲你们编译原理上了什么内容吗?

  • 说一下编译的五大过程

  • 语义分析的输入和输出是什么

  • 对比C/Java中的程序起点是main()函数,汇编程序的起点标志是什么?

  • 编译前端与编译后端

  • 根据已有编译器,生成新编译器

  • 上下文无关文法

  • 文法的二义性

  • 乔姆斯基四类文法

  • 自动机

  • 非确定有限(状态)自动机(NFA)与确定有限(状态)自动机(DFA)的区别

  • 语法分析:自上而下分析与自下而上分析

  • 编译过程5个阶段各自的任务

数字图像处理

  • 计算机视觉、图形学和图像处理,三者有什么联系?Computer Vision,简称 CV。输入的是图像或图像序列,通常来自相机、摄像头或视频文件。输出的是对于图像序列对应的真实世界的理解,比如检测人脸、识别车牌、区分猫狗。Digital Image Processing,简称 DIP。输入的是图像,输出的也是图像。Photoshop 中对一副图像应用滤镜就是典型的一种图像处理。常见操作有模糊、灰度化、增强对比度等。

  • 图形学与数字图像处理?

  • 模拟图像与数字图像?模拟图像:通过某种物理量(如光、电等)的强弱变化来记录图像亮度信息的图像,是连续的,肉眼可见的。数字图像:用存储数字的矩阵来表达客观物体的图像,是一个离散采样点的集合,肉眼不可见。

  • 数字图像处理的主要研究内容?图像的获取和存储、压缩、去除噪声、增强、复原、分割、提取特征等。

  • 灰度图像、二值图像与彩色图像?

  • 对比度扩展?

  • 如何进行二值化?

  • 直方图均衡化?利用图像直方图对对比度进行调整。把一个已知灰度概率密度分布的图像经过一种变换,使之演变为一幅具有均匀灰度概率密度分布的新图像。

  • 什么是中值滤波?消除图像中的噪声又保留细节。取奇数窗口所有像素的中间值,替换到中心位置的像素。

  • 怎么消除噪声?滤波器。

  • 图像分割?

  • 数字图像说一个模型我问你

模式识别

  • 什么是模式识别?

  • 模式识别的课程学过什么?特征降维、朴素贝叶斯算法、支持向量机、k均值算法、人脸识别、人脸检测等等。

  • 模式识别与机器学习有什么区别?模式识别:人类主动去描述某些特征给机器,然后让机器做出分类、识别等。机器学习:机器从已知的经验数据(样本)中,通过某种特定的方法(算法),自己去寻找提炼(训练/学习)出一些规律(模型);提炼出的规律就可以用来判断一些未知的事情(预测)。

  • 聚类算法?聚类是无监督算法。举例:K均值算法。原理:初始化k个簇的质心,计算每个数据点与每个质心的距离,将数据点分配到与其最近的簇。对每个簇计算其所有点的均值作为新的质心。

  • 无监督和有监督算法的区别?

  • 过拟合、欠拟合?

  • 人工智能里面的CPU和GPU有什么不同

大数据技术基础

  • 学习内容?虚拟机、Linux、Python基础知识;大数据处理架构Hadoop;分布式文件系统HDFS;NoSQL数据库;MapReduce;Spark;大数据案例(数据可视化、推荐系统、自然语言处理等)

  • 人工智能和大数据的关系?

  • 什么是大数据?

  • 机器学习,数据挖掘,大数据分析的区别?大数据侧重描述数据,数据挖掘侧重描述应用,机器学习侧重描述方法。机器学习方法在大型数据中的应用称为数据挖掘。

后记

上面的问题基本都是我一条一条从网上搜的资料以及自己翻阅教材的结果,部分没搜到答案的就只能自由发挥了,面试最主要就是心态,老师都挺好的,也没怎么为难人,我感觉全程老师都很和善的,面试完了还夸人,点赞!

另外其实复试当中笔试占比较大,难度也挺高的,面试大家基本都差不多,还是得看笔试,不提前准备真的就凉了。。。

祝考研上岸!

参考

2021年上岸知乎大佬zdszero的分享:中科大计算机考研复试详解

-------------本文结束感谢您的阅读-------------