前言

该文从网上各种可查记录中整理出历年复试会问到的专业课问题。

所有题目来源自王道论坛、CSDN博客以及上岸学长的回忆

并不局限于学硕和专硕

 

题目

1.LINUX与UNIX的区别

题目来源http://www.cskaoyan.com/forum.phpmod=viewthread&tid=654791&extra=page%3D1%26filter%3Dtypeid%26typeid%3D50

答: 

  1. Linux是开发源代码的自由软件,Unix是对源代码实行知识产权保护的传统商业软件。这应该是最大的不同。
  2. Unix系统大多是与硬件配套的,Linux则可运行在多种硬件平台上。
  3. Linux 的核心是免费的开源,而Unix的核心并不公开。
  4. Linux的开发是处在一个完全开放的环境之中,Unix的开发完全是处在黑箱之中,只有相关的开发人员才能够接触的产品的原型。

 

2.对称算法和非对称的算法的区别

题目来源

http://www.cskaoyan.com/forum.phpmod=viewthread&tid=654791&extra=page%3D1%26filter%3Dtypeid%26typeid%3D50

答:

对称加密算法:对称加密指的就是加密和解密使用同一个秘钥,所以叫做对称加密。对称加密只有一个秘钥,作为私钥。

优点:算法公开、计算量小、加密速度快、加密效率高。

缺点:秘钥的管理和分发非常困难,不够安全。

 

非对称加密算法:非对称加密指的是:加密和解密使用不同的秘钥,一把作为公开的公钥,另一把作为私钥。公钥加密的信息,只有私钥才能解密。私钥加密的信息,只有公钥才能解密。 私钥只能由一方安全保管,不能外泄,而公钥则可以发给任何请求它的人。非对称加密使用这对密钥中的一个进行加密,而解密则需要另一个密钥。

 

优点:安全性更高,公钥是公开的,秘钥是自己保存的,不需要将私钥给别人。

缺点:加密和解密花费时间长、速度慢,只适合对少量数据进行加密。

 

3.tcp和udp有什么区别

题目来源:

http://www.cskaoyan.com/forum.phpmod=viewthread&tid=642528&extra=page%3D1%26filter%3Dtypeid%26typeid%3D50

 

  1. TCP是面向连接的,而UDP是无连接的
  2. TCP是面向字节流的,而UDP是面向报文的
  3. TCP提供可靠交付:传输的数据无差错、不重复、不丢失。UDP提供的是尽最大努力交付,是不可靠交付
  4. TCP是点对点的,而UDP支持一对一、一对多、多对一、多对多的交互通信

 

4.什么是子网掩码

题目来源:

http://www.cskaoyan.com/forum.phpmod=viewthread&tid=642528&extra=page%3D1%26filter%3Dtypeid%26typeid%3D50

 

子网掩码用于计算出主机所在的子网的子网号。即将IP地址划分为网络号与主机号

 

5.什么是线程,与进程有什么关系

题目来源:

http://www.cskaoyan.com/forum.phpmod=viewthread&tid=642528&extra=page%3D1%26filter%3Dtypeid%26typeid%3D50

1.线程是程序执行的最小单位,而进程是操作系统分配资源的最小单位;

2.一个进程由一个或多个线程组成,线程是一个进程中代码的不同执行路线;

3.进程之间相互独立,但同一进程下的各个线程之间共享程序的内存空间(包括代码段、数据集、堆等)及一些进程级的资源(如打开文件和信号),某进程内的线程在其它进程不可见;

 

6.栈和队列的区别

题目来源:

http://www.cskaoyan.com/forum.phpmod=viewthread&tid=597834&extra=page%3D1%26filter%3Dtypeid%26typeid%3D50

首先二者都是线性结构

栈是采取先进后出的原则,而队列采取的是先进先出的原则

 

7.顺序结构与链式结构的区别

题目来源:

http://www.cskaoyan.com/forum.phpmod=viewthread&tid=597834&extra=page%3D1%26filter%3Dtypeid%26typeid%3D50

 

  1. 链式结构的内存的地址不需要连续,顺序结构的内存地址需要连续
  2. 链式结构占的内存空间更大,因为需要空间来存储下一个地址
  3. 链式结构更加适合频繁的插入删除更新数据

 

8.内存与外存的区别

题目来源:

http://www.cskaoyan.com/forum.phpmod=viewthread&tid=597834&extra=page%3D1%26filter%3Dtypeid%26typeid%3D50

内存:

  1. 易失性
  2. 内存包括RAM中的缓存和主内存。它正式包括存储器和辅助存储器。
  3. 与CPU非常接近的高性能数据;SRAM比DRAM更贵;DRAM比外存更贵。
  4. 可升级的;与外部存储介质相比,价格昂贵。
  5. 存储CPU指令:使用频繁重复的指令进行缓存以提高效率,主要用于将CPU指令与其他计算机设备和组件进行通信。

外存:

  1. 非易失性
  2. 尽管外存也是一种存储类型,但它与缓存和主内存不同,因为它是非易失性的。
  3. 速度较慢,但能够以更低的成本获得更高的容量
  4. 可升级的;HDD成本在广泛可接受的范围内,而SSD的价格正在逐年降低,与HDD十分接近。
  5. 可存储数据,直到预定的数据被移动或删除。没有电源的硬盘和磁带将无限期地保存数据。无电源SSD可以保留数据长达两年,但实际上这段时间要短得多

 

9.二叉树与度为二的数的区别

题目来源:http://cskaoyan.com/forum.php?mod=viewthread&tid=649650&fromuid=484376

  1. 度为2的树是不区分左子树和右子树.而二叉树是要分左子树和右子树的
  2. 度为2的数不包含空树,而二叉树是可以有空树的

 

10.并行和并发的区别

题目来源:http://cskaoyan.com/forum.php?mod=viewthread&tid=649650&fromuid=484376

  • 并行(Parallel):指两个或者多个事件在同一时刻发生,即同时做不同事的能力。
  • 并发(Concurrent):指两个或多个事件在同一时间间隔内发生,即交替做不同事的能力,多线程是并发的一种形式。

 

11.死锁是如何产生的,怎么解决

死锁是由于两个或两个进程以上相互等待资源导致的。

产生死锁的四个必要条件:

  1. 互斥条件
  2. 资源不可剥夺
  3. 请求与保持条件
  4. 循环等待条件

处理方法:

  1. 死锁预防
  2. 死锁避免
  3. 死锁检测
  4. 死锁解除

 

12.什么是稳定的排序算法

即两个相同的数字排序前和排序后顺序相同。

 

第一中排序就是稳定排序,第二个则不是稳定排序

常见的稳定排序:冒泡排序、基数排序、插入排序、归并排序、桶排序、二叉树排序

常见的不稳定排序:选择排序,希尔排序,堆排序,快速排序

 

13.集线器与路由器,交换机的区别

 

路由器 交换机
工作层次 网络层 数据链路层
转发依据 IP地址 Mac地址
功能 连接不同的网络 连接局域网中的电脑
宽带影响 共享宽带 独享宽带
交换机 集线器
工作层次 数据链路层 物理层
宽带影响 独享 共享
数据传输 有目的发送 广播发送
传输模式 全双工或半双工 半双工

 

13.数据结构中二路归并排序和快速排序的特点和区别

 

同:都借鉴了分治法思想。

异:按照上文对二路归并排序排序过程的划分方式,快速排序只有“分”的过程,在“分”的过程中完成序列的排序工作,而二路归并排序具有“分”与“合”两个过程,且真正的排序在“合”的过程中完成。

具体快速排序看我另外一篇:https://blog.csdn.net/SampsonTse/article/details/105538174

二路归并排序图解

摘自:https://www.cnblogs.com/KenBaiCaiDeMiao/p/12535675.html

 

 

结尾

目前只整理出那么多,会陆续补充


 

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐