复试题Day Four

复试题Day Four

文章目录

数据结构

简述单链表设置头节点的作用是什么?(至少说出两条好处):

​ 链表中第一个结点的存储位置叫做头指针,那么整个链表的存取就必须是从头指针开始进行了。之后的每一个结点,其实就是上一个的后继指针指向的位置。“链表中第一个结点的存储位置叫做头指针”,如果链表有头结点,那么头指针就是指向头结点数据域的指针。

  • 头结点是为了操作的统一与方便而设立的,放在第一个元素结点之前,其数据域一般无意义(当然有些情况下也可存放链表的长度、用做监视哨等等)。

  • 有了头结点后,对在第一个元素结点前插入结点和删除第一个结点,其操作与对其它结点的操作统一了。

  • 首元结点也就是第一个元素的结点,它是头结点后边的第一个结点,而且头结点不是链表所必需的。

  • 在线性表的链式存储结构中,头指针是指链表指向第一个结点的指针,若链表有头结点,则头指针就是指向链表头结点的指针。

  • 头指针具有标识作用,故常用头指针冠以链表的名字。

  • 无论链表是否为空,头指针均不为空。头指针是链表的必要元素。

计算机组成原理

请简要说明常见的主机与外围设备之间信息传送的控制方式,并指出采用哪 种方式 CPU 效率最低,哪种方式效率最高?

​ 主机与外围设备之间信息传送的控制方式有四种:程序查询方式、中断方式、DMA 方式和通道方式。程序查询方式 CPU 效率最低。

程序直接传送方式
程序直接传送方式是指完全通过程序来控制主机和外围设备之间的数据传送。

  1. 无条件传送方式
    默认外设处于准备好的状态,不需要查询外设的空闲状态。
  2. 程序查询传送方式
    CPU通过执行程序不断地读取并测试外设的状态。

程序中断传送方式

​ 在程序直接传送方式中,CPU需要不断地查询外设的状态。这显然是浪费的,所以我们把请求主动权交给外设。外设通过发送中断服务请求,让CPU响应后执行中断服务程序,待执行完毕后,CPU重新返回原来的主程序继续执行自己的工作。

直接存储器存取(DMA)方式
上面的中断传送方式亦有不足,例如,中断服务程序的编制和调试复杂,而且执行中断这个流程下来,需要一定的时间。这时候引入DMA控制器,把控制和操作给到DMA控制器,当需要数据传输时,系统总线的管理权从CPU给到了DMA控制器。

通道控制方式

解决了I/O操作的独立性和各部件工作的并行性。把CPU从繁琐的输入/输出操作中解放出来。采用通道技术后,不仅能实现CPU和通道的并行操作,而且通道与通道之间也能实现并行操作,各通道上的外设也能实现并行操作,从而可提高整个系统的效率。当然缺点是由于需要更多硬件(通道处理器),因此其成本较高。通道控制方式通常应用于大型数据交互的场合。

操作系统

OS 有哪几大特征?其最基本的特征是什么?:

操作系统的基本特征如下:

  • 并发性 并行性是指两个或多个事件在同一时刻发生,而并发性是指两个或多个事件在同一时间间隔内发生;
  • 共享性 所谓共享是指系统中的资源可供内存中多个并发执行的进程(线程)共同使用;
  • 虚拟性 所谓虚拟是指通过某项技术把一个物理实体变为若干个逻辑上的对应;
  • 异步性。

​ 产生原因:操作系统允许多个并发进程共享资源,使得每个进程的运行过程受到其他进程制约,使进程的执行不是一气呵成,而是以停停走走的方式运行。

​ 共享和并发是操作系统的两个最基本的特征,虚拟以并发和共享为前提,异步是并发和共享的必然结果。

​ 在操作系统中,进程的最基本的特征是:动态性和独立性。

计算机网络

简述转发器、交换机、路由器和网关的工作层次和作用:

转发器
转发器(Repeater)又被称为中继器或放大器,执行物理层协议,负责第一层(物理层)的数据中继,实现电气信号的“再生”。用于 互连两个相同类型的网段,主 要功能是延伸网段和改变传输媒体,从而实现信息位的转发。它本身不执行信号的过滤功能。

网桥与交换机

​ 网桥(Gate Bridge)负责第二层(数据链路层)的数据中继。互连两个独立的、仅在低两层实现上有差异的子网。
​ 网桥和交换机属于OSI和TCP/IP的第二层,即数据链路层。数据链路层的作用包括数据链路的 建立、维护和拆除、帧包装、帧传输、帧同步、帧差错控制以及流量控制等。

交换机
交换机(Switch)是一种简化的网桥,互连相同类型的网络,工作在OSI/RM体系结构的第二层(数据链路层)。它采用 独享带宽的工作方式。它比集线器智能,网络上的数据是MAC地址的集合,它能分辨出帧中的源MAC地址和目的MAC地址,因此可以在任意两个端口之间建立联系,但交换机并不懂得IP地址。

路由器

​ 路由器(Router)负责第三层(网络层)的数据中继。它能理解数据中的IP地址,如果它接收到一个数据包,就检查其中的IP地址,如果目标地址是本地网络的就不理会,如果是其他网络的,就将数据包转发出本地网络。它的作用在于连接相同或不同类型网络,并且能找到网络中数据传输最合适的路径即路由选择。
网关

网关

​ 网关(Gateway)负责 第三层(网络层)以上的数据中继,实现不同体系结构的 网络协议转换,它通常采用软件的方法实现,并且与特定的应用服务一一对应。
​ 网关是一种复杂的网络连接设备,可以支持不同协议之间的转换,实现不同协议网络之间的互连。网关具有对不兼容的高层协议进行转换的能力,为了实现异构设备之间的通信,网关需要对不同的链路层、专用会话层、表示层和应用层协议进行翻译和转换。所以网关兼有路由器、网桥、中继器的特性。

软件工程

面向对象和面向过程软件工程有哪些区别:

面向对象方法学是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,是建立在“对象”概念基础上的方法学。

​ 面向对象的分析OOA,OOA强调直接针对问题域客观存在的各项事物设立OOA模型中的对象.问题域有哪些值得考虑的事物,OOA模型中就有哪些对象.00A对问题域的观察、分析和认识是很直接的,对问题域的描述也是很直接的.它所采用的概念及其术语与问题域中的事物保持了最大 程度的数据一致,不存在语言上的鸿沟。

传统方法学又称生命周期方法学或结构化范型。一个软件从开始计划起,到废弃不用 止,称为软件的生命周期。在传统的软件工程方法中,软件的生存周期分为需求分析、总体设计、详细设计、编程和测试几个阶段。

​ 面向过程软件工程使用结构化分析技术,面向数据流自顶向下求精的技术来完成需求分析阶段。在全局范围内以功能、数据或数据流为中心来进行分析。主要阶段有实体—联系图、状态转换图的分析设计。这些方法的分析结果不能直接地映射问题域,而是经过了不同程度的转化和重新组合。

​ 传统方法编程以过程为中心,把大的程序划分为若干个相对独立、功能简单的程序模块,强调过程,强调功能和模块化,通过一系列过程的调用和处理完成相应的任务。
面向对象编程以对象为中心,是对一系列相关对象的操纵,发送消息给对象,由对象执行相应的操作并返回结果,强调对象。理论上,面向对象的程序设计方法将产生更好的模块内聚和耦合特性,使得软件更易于重用与维护。

专业面试

考研过程中遇到过什么问题?

​ 在我的考研的过程中大概遇到的问题分为三个部分。

  • 第一个部分就信息收集和找寻学校的问题,针对自己的能力与研究方向首先要大致选择一个方向来确定专硕还是学硕,然后需要搜索有关学校所需要的专业课以及专业课的资料的购买。一开始的时候总是随大流没有很好的自主努力的方向,总会认为加快学习进度是有意义的,最后才发现理解才是最重要的。还有就是考研报名以及时间节点的大致规划,一开始没有明确的方向,应该量力而行,针对自己的能力去找到薄弱点然后多加努力。
  • 第二个部分就是针对需要努力的方向重点把握需要学习的方向。一开始不会把握专业课的重点,在全面复习一遍之后没有一个很好的总结,随着二刷三刷慢慢学会了总结,知道了自己应该解决的问题,对于自己的整体方面有了很大的提升。还有就是没有阶段测试自己的能力,抽出一部分时间做一个简单地测试是很有必要的,通过测验可以大致了解自己的学习状态以及需要更新的学习方面着重强化吸收很有必要。还有就是对于学习时间和效率有误区,总觉得需要很多时间去弥补自己的学习能力不足,忽略了大量时间对自己的学习状态没有正反馈,这使得自己对于努力没有好的反馈导致动力不足容易陷入恶性循环,需要适当的结合自己的节奏量力而行。
  • 第三个部分就是针对一系列外界因素积极主动的与人沟通多释放自己的压力很重要。如果总是一个人努力是看不到最后的结果,在你面对很多优秀的同学一起学习的时候,你自然而然有一种驱动力让你可以很好的向前。及时的排解压力并且针对焦虑的情况去抓紧时间对自己进行测验,逐渐建立信心,最后查漏补缺才是最优解。面对外界产生的焦虑应该找寻方式排解,换个环境学习或者换个状态方式学习也是排解压力的一种方法,不要总是拘泥于一味的堆量,发现心理状态问题马上解决不去破罐子破摔才是正解。考前的紧张是有必要的,但是要对自己有清楚的认知才会在估分对答案的时候有一个合理的心理预期,不会对自己的选择产生迷茫。最后就是选择了就不要后悔,努力做到最好,无论结果怎样最重要的是这个状态你知道了应该怎么学习怎么去努力做一件事而不是随波逐流,对自己有个交代,不求事事顺心,但求尽力而为无怨无悔,不要觉得学习的东西没有用,日后肯定会有作用的。

英语面试

How do you describe your personality?

	In my daily life, I have a cheerful personality and like sports. I often go for a run with my friends and play table tennis. I also like to ride. I used to ride more than 30 kilometers to a desert reservoir with my friends when I was in high school. I enjoyed the time with my friends.

	When I'm alone, I tend to be quieter. I like to read books, and I like to immerse myself in the sea of books to appreciate different life. I will also write poetry, because life is beautiful, we have to look forward to the future, and there will be surprises waiting for us in the future.

	In work and study, I am serious. When I participate in the competition, I can always be the team leader. When I conduct a specific analysis of the problem, I will always analyze the advantages and disadvantages comprehensively, list the possible problems and the problems that can be solved immediately, and deal with them step by step. When there are differences in team communication, I am willing to listen to various voices, and finally give a best of both worlds by summarizing the results.

	I like to explore the unknown, and I am curious about all the unknowns. I hope to get in touch with different people and things, experience different research directions, and work hard for it. This is my life creed.

​ 在平时的生活中,我性格开朗喜欢运动,经常和小伙伴去跑步,打乒乓球。我还喜欢骑行,曾经和小伙伴在高中的时候骑行30多公里去了一个沙漠水库游玩,我很享受与朋友在一起的时光。

​ 在独自一个人的时候,我会比较安静。我喜欢去看书,也喜欢沉浸在书的海洋去领略不同的人生。我也会去写诗,因为生活是美好的,我们要对未来有所期盼,未来也会有惊喜等待着我们。

​ 在工作和学习上,我严肃认真。参加比赛的时候,我总能当团队的领队,针对问题进行具体分析的时候,我总是会全面的分析优缺点,把可能出现的问题以及可以马上解决的问题罗列出来,一步一步处理。当队伍交流出现分歧的时候,我愿意倾听各种不同的声音,通过总结最后给出一个两全其美的处理结果。

​ 我喜欢探索未知事务,对一切未知事物都有好奇心,我希望去接触不同的人和事,体验不同的研究方向,并为之努力奋斗下去,这就是我的人生信条。

上一篇:数学符号、公式的英语读法


下一篇:2020ICPC济南热身赛 B-Four Xor【鸽巢原理+暴力】