2019华为精英挑战赛初赛模拟试题总结思考

  1. 小型机通常采用RISC和Unix操作系统

T
小型机操作系统一般是UNIX,PC服务器操作系统一般是windows。但是题干中RISC不是操作系统,是精简指令集计算机,是计算机***处理器的一种设计模式,这种设计思路对指令数目和寻址方式都做了精简,使其实现更容易,指令并行执行程度更好,编译器的效率更高,是CPU的设计模式,对应ARM。RISC专注高性能、高性能功耗比、小体积以及移动设备领域,CISC专注桌面、高性能和民用市场。

  1. (单选题)磁盘接口的类型包括:1、SAS;2、SATA;3、NL-SAS;4、SCSI;5、IDE。请对上述五种类型的接口速率由快到慢进行排序,正确的一项是?

13245
IDE电子集成驱动器,“硬盘控制器”与“盘体”集成在一起的硬盘驱动器,一般指的是最早出现的ATA-1,速度较慢,目前已经逐渐淘汰。
SCSI指的是小型计算机接口,其速度,性能和稳定性能都优于IDE,主要面向服务器和工作站市场。
SATA指的是Serial Advanced Technology Attachment,是串行ATA。优点是持热插拔 ,传输速度快,执行效率高。
SAS是指SAS是Serial Attach SCSI,串行SCSI。
NL-SAS是采用了SAS的磁盘接口和SATA的盘体的综合体。
首先串行速度高于非串行的,SCSI是高于IDE(ATA)的。

  1. (判断题)传统的数据中心硬件包括X86服务器、小型机和大型机,存储和网络设备。

T

  1. (单选题)以下哪项用来确定路由优先级?

路由协议算法的优劣
路由优先级也被称为路由的“管理距离”,是一个正整数,范围0~255,它用于指定路由协议的优先级
到目标网络的跳数(所经过路由器的个数)–》跳数越少,路径越好
发送接口的带宽(链路传输速率)–》带宽越大,网络传输能力就越强
物理链路的可靠性(衡量标准为传输过程中的误码率)–》可靠性越强,算法越优
上面三个算是协议算法优劣的具体评价标准

  1. (判断题)在shell命令行方式下,一行只能写一个指令,每次只能使用一个命令。

F
在执行Shell命令时多个命令可以在一个命令行上运行,但此时要使用分号(;)分隔命令,长Shell命令行可以使用反斜线字符()在命令行上扩充

  1. (判断题)将编译程序分成若干个“遍”是为了使程序的结构更加清晰。

T

  1. (单选题)匹配"英文字母文件名:一个或者多个空格 行号"的正则表达式为:

[a-zA-Z]+:[ ]+[0-9]+
+号代表前面的字符必须至少出现一次(1次或多次)
*号代表字符可以不出现,也可以出现一次或者多次(0次、或1次、或多次)。
?问号代表前面的字符最多只可以出现一次(0次、或1次)
/[0-9]{1,2}/ 表示至少指定一位但至多两位数字,设置 0~99 的两位数
[a-z] //匹配所有的小写字母
[A-Z] //匹配所有的大写字母
[a-zA-Z] //匹配所有的字母
具体可参考此教程

  1. (单选题)若要将当前目录中的myfile.txt文件压缩成myfile.txt.tar.gz,命令为

tar [命令] [参数] 文件或目录
tar -zcvf myfile.txt.tar.gz myfile.txt
cp [选项] [源文件|目录] [目标文件|目录]
mv [选项] [源文件|目录] [目标文件|目录]
可以了解到的是,通常涉及到两个目标的时候要操作的文件都是前面靠近命令的那个

  1. (判断题)对于整数 n,(n & (n-1) ) == 0 的含义是判断 n 是否为偶数。

F
要判断奇偶数, 直接用二进制最后一位去比较就可以.
首先,a&b表示,a和b在计算机中存储的对应二进制码按位取与

if(n & 1)
 cout << "奇数" << endl;
else 
 cout << "偶数" << endl;

n & (n-1) 的作用是把n的最低位1设置为0;
XXX10000 -> XXX00000
所以这个表达式(n & (n-1) ) == 0 可以用来判断n是否是0 或者2的整数倍.

  1. (判断题)不含回路的有向图一定存在拓扑排序。

T
判断有向图是否含有回路的一个重要方法就是采用拓扑排序。

  1. (单选题){0, 2, 1, 4, 3, 9, 5, 8, 6, 7} 是以数组形式存储的小顶堆,删除堆顶元素0后的结果是()

{1, 2, 5, 4, 3, 9, 7, 8, 6}
数据结构知识,小根堆删除堆顶后将堆尾的元素放到删除元素的地方,然后进行调整堆(调整堆是从上至下的,调整时先在左右子结点中找最小的,如果父结点比这个最小的子结点还小说明不需要调整了,反之将父结点和它交换后再考虑后面的结点)
插入元素 --》我们将待插入的数据元素接至堆的末尾,然后再不断向上调整直至没有大小颠倒为止。

  1. (单选题)20个节点的三叉树(每个节点都有三个指向孩子节点的指针),有多少个空指针?

41
数据结构知识,m个节点的树有m-1条边,即有m-1个非空指针,所有空指针的个数为3m-(m-1)=2m-1,也就是41

  1. (单选题)关于数组初始化说法错误的是:

显式初始化的数组需要指定数组的维数值。X
显式初始化数组元素对数组元素进行列表初始化时,此时允许忽略数组的维度。
在函数体外定义的内置数组,其元素均初始化为 0
在函数体内定义的内置数组,其元素无初始化。
如果其元素为类类型,则自动调用该类的默认构造函数进行初始化。

  1. (单选题)如下代码段中空白处应填入的代码正确的是:
void delete_obj(std::vector<Obj> &v_obj)
{
    std::vector<Obj>::iterator it = v_obj.begin();
    while(it != v_obj.end())
    {
        if(!it->isEmpty())
        {
            ______ //此处填代码
        }
       else
       {
            ++it;
       }
    }
}

v_obj.erase(it++);
这段代码其实等同于v_obj.erase(v_obj.begin(), v_obj.end());

  1. (多选题)Linux系统的优势有:

多用户多任务,使用者与群组的规划
稳定、高效和安全
Linux是分时操作系统。Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。
实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,调度一切可利用的资源完成实时任务,并控制所有实时任务协调一致运行的操作系统。提供及时响应和高可靠性是其主要特点。
分时操作系统是使一台计算机采用时间片轮转的方式同时为几个、几十个甚至几百个用户服务的一种操作系统。

  1. (多选题)auto_ptr 类使用必须满足下列限制:

不要使用 auto_ptr 对象保存指向静态分配对象的指针。
不要使用两个 auto_ptrs 对象指向同一对象。
不要使用 auto_ptr 对象保存指向动态分配数组的指针。
不要将 auto_ptr 对象存储在容器中。

  1. (多选题)可以使用memset,memcpy直接进行初始化和拷贝的有:

结构
枚举
指针
类在执行memset之后,而是这个类成员函数指针全部重置为0,而后续再对类进行操作时,因为已经全部重置为0,所以是会访问到非法内存,导致崩溃

你可能感兴趣的:(刷题)