数据分析师题库及答案.docx
- 文档编号:8642158
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:25
- 大小:38.69KB
数据分析师题库及答案.docx
《数据分析师题库及答案.docx》由会员分享,可在线阅读,更多相关《数据分析师题库及答案.docx(25页珍藏版)》请在冰豆网上搜索。
数据分析师题库及答案
2022年数据分析师题库及答案
1.在软件开发过程中,我们可以采用不同的过程模型,下列有关增量模型描述正确的是()
A.是一种线性开发模型,具有不可回溯性B.把待开发的软件系统模块化,将每个模块作为一个增量组件,从而分批次地分析、设计、编码和测试这些增量组件C.适用于已有产品或产品原型(样品),只需客户化的工程项目D.软件开发过程每迭代一次,软件开发又前进一个层次
正确答案:
B
增量模型
增量模型也称为渐增模型,是把待开发的软件系统「模块化」,将每个模块作为一个增量组件,从而分批次地分析、设计、编码和测试这些增量组件。
优点:
(1)将待开发的软件系统模块化,可以「分批次地提交软件产品」,各个阶段并不交付一个可运行的完整产品,而是交付满足客户需求的一个子集的可运行产品,使用户可以及时了解软件项目的进展。
(2)以组件为单位进行开发「降低了软件开发的风险」。
一个开发周期内的错误不会影响到整个软件系统。
(3)「开发顺序灵活」。
开发人员可以对组件的实现顺序进行优先级排序,先完成需求稳定的核心组件。
当组件的优先级发生变化时,还能及时地对实现顺序进行调整。
缺点
(1)要求待开发的软件系统可以被模块化。
如果待开发的软件系统很难被模块化,那么将会给增量开发带来很多麻烦。
「题目解析」A.具有可回溯性,可以返回修改;B.正确;C.适用于未开发的原型(样品);D.软件开发过程每迭代一次,软件开发又前进一个层次,属于螺旋模型的软件过程。
-螺旋模型
强烈参考 《常用软件开发模型比较分析》
2.下面有关值类型和引用类型描述正确的是()?
A.值类型的变量赋值只是进行数据复制,创建一个同值的新对象,而引用类型变量赋值,仅仅是把对象的引用的指针赋值给变量,使它们共用一个内存地址。
B.值类型数据是在栈上分配内存空间,它的变量直接包含变量的实例,使用效率相对较高。
而引用类型数据是分配在堆上,引用类型的变量通常包含一个指向实例的指针,变量通过指针来引用实例。
C.引用类型一般都具有继承性,但是值类型一般都是封装的,因此值类型不能作为其他任何类型的基类。
D.值类型变量的作用域主要是在栈上分配内存空间内,而引用类型变量作用域主要在分配的堆上。
正确答案:
ABC
(求解析D)
值类型
值类型就是现金,要用直接用;引用类型是存折,要用还得先去银行取现。
值类型1.值类型变量都存储在栈中。
2.访问值类型变量时,一般都是直接访问其实例。
3.每个值类型变量都有自己的数据副本,因此对一个值类型的变量的操作不会影响其他的变量。
4.复制值类型变量时,复制的是变量的值,而不是变量的地址。
5.值类型变量不能为null,必须具有一个确定的值。
引用类型1.必须在托管堆中为引用类型变量分配内存。
2.必须使用new关键字来创建引用类型变量。
3.在托管堆中分配的每个对象都有与之相关联的附加成员,这些成员必须被初始化。
4.引用类型变量是由垃圾回收机制来管理的。
5.多个引用类型变量都可以引用同一个对象,这种情形下,对一个变量的操作会影响另一个变量所引用的同一对象。
6.引用类型被赋值之前的值都是null。
3.如何在多线程中避免发生死锁?
A.允许进程同时访问某些资源。
B.允许进程强行从占有者那里夺取某些资源。
C.进程在运行前一次性地向系统申请它所需要的全部资源。
D.把资源事先分类编号,按号分配,使进程在申请,占用资源时不会形成环路。
官方答案:
ABCD民间答案:
BCD
死锁
在多道程序设计环境下,多个进程可能竞争一定数量的资源。
一个进程申请资源,如果资源不可用,那么进程进入等待状态。
如果所申请的资源被其他等待进程占有,那么该等待的进程有可能无法改变状态,这种情况下称之为死锁。
产生死锁的4个必要条件:
互斥条件:
系统存在临界资源,存在一个资源每次只能被一个进程使用,若别的进程也要使用该资源,需要等待知道其占用者用完释放。
保持与等待条件:
部分分配,允许进程在不释放其已经分得的资源的情况下请求并等待分配的资源不可抢占条件:
有些系统资源是不可抢占的,系即当某个进程已经获得这种资源后,系统是不能强行收回,其他进程也不能强行夺走,只能由自身使用完释放。
循环等待条件:
若干个进程形成环形链,链中的每一个进程都在等待该链中下一个进程所占用的资源。
死锁的预防需要至少破坏死锁的4个必要条件之一,而死锁的避免不去刻意破坏4个必要条件,而是通过对资源的分配策略施加较少的限制条件,来避免死锁的产生。
「民间解析」
选项B,破坏不可抢占条件,属于死锁预防选项C,破坏了保持与等待条件,属于死锁预防选项D,破坏了循环等待条件,属于死锁预防
参考资料
《如何在多线程中避免发生死锁》
4.以下为求0到1000以内所有奇数和的算法,从中选出描述正确的算法()
A.①s=0;②i=1;③s=s+i;④i=i+2;⑤如果i≤1000,则返回③;⑥结束B.①s=0;②i=1;③i=i+2;④s=s+i;⑤如果i≤1000,则返回③;⑥结束C.①s=1;②i=1;③s=s+i;④i=i+2;⑤如果i≤1000,则返回③;⑥结束D.①s=1;②i=1;③i=i+2;④s=s+i;⑤如果i≤1000,则返回③;⑥结束
正确答案:
A
5.关于递归法的说法不正确的是()
A.程序结构更简洁B.占用CPU的处理时间更多C.要消耗大量的内存空间,程序执行慢,甚至无法执行D.递归法比递推法的执行效率更高
正确答案:
D
「民间解析」
简单的说,递推是在借助前一个几经计算出来的结果去计算下一步的结果,以此来得到最终结果,有此可知递推并不需要保留太多现场信息,
而递归就不一样,虽然也是要借助前一步的结果,但这前一步结果往往刚开始是未知的,要一步一步递推下去,直到遇到终结条件,然后在一层一层的回归,直到回归到最上一层计算出结果,可见递归是包含两步的,一个递推下去,一个在回归
递归往往表达简单,但计算需要时空都比较大
6. 字符串”ABCD”和字符串”DCBA”进行比较,如果让比较的结果为真,应选用关系运算符()
A.>B.
正确答案:
B
字符串比较 优先判断对应字符的大小(ASCII码顺序),A”为65;“a”为97;“0”为48;
「题目解析」 字符串”ABCD”和字符串”DCBA”,A小于D,则无需继续比较了,符号为<。
7.下面是一段关于计算变量s的算法:
①变量s的初值是0②变量i从1起循环到n,此时变量s的值由下面的式子表达式计算③s=s+(-1)*i④输出变量s的值这个计算s值的算法中,s的代数式表示是()。
A.1-2+3-4+„+(-1)n*(n-1)B.1-2+3-4+„+(-1)n-1*nC.1+2+3+4+…+(n-1)+nD.-1-2-3-4-…-n
正确答案:
D
8.以下运算符中运算优先级最高的是()
A.+B.ORC.>D.\
正确答案:
D
运算符优先级 函数>算术>关系>逻辑
算数指数(^)→取负(-)→乘浮点除(*、/)→整除(\)→取模(Mod)→加、减(+、-)→连接(&)
关系等于(=)→不等于(!
=)→小于(<)→大于(>)→小于等于(≤)→大于等于(≥)→Like→Is
逻辑Not→And→Or→Xor→Eqv(等价)→Imp(蕴含)
9.采用哪种遍历方法可唯一确定一棵二叉树?
()
A.给定一棵二叉树的先序和后序遍历序列B.给定一棵二叉树的后序和中序遍历序列C.给定先序、中序和后序遍历序列中的任意一个即可D.给定一棵二叉树的先序和中序遍历序列
正确答案:
BD
二叉树的遍历方法 目前做了三套题,二叉树的遍历方法出现了三次。
套题
知识点
X东2019春招京东数据分析类试卷
第2题:
根据前序和后续遍历,求中序遍历
X易2018校园招聘数据分析工程师笔试卷
第1题:
已知中序遍历,求二叉树的所有可能
X东2019校招数据分析工程师笔试题
第9题:
遍历方法确定唯一的二叉树
「题目解析」
前序和后序在本质上都是将父节点与子结点进行分离,但并没有指明左子树和右子树的能力,因此得到这两个序列只能明确父子关系,而不能确定一个二叉树。
给出中序遍历之后再给一个其他的遍历就能够确定了。
前序遍历+中序遍历
后序遍历+中序遍历可以唯一确定一棵二叉树。
10.已知小顶堆:
{51,32,73,23,42,62,99,14,24,3943,58,65,80,120},请问62对应节点的左子节点是
A.99B.73C.3943D.120
官方答案:
B个人答案:
65
最小/大堆的构建方法,强烈参考 《最小堆构建、插入、删除的过程图解》
11.若串S=”UP!
UP!
JD”,则其子串的数目
A.33B.37C.39D.35
正确答案:
B个人答案:
31
子串 串中任意个连续的字符组成的子序列称为该串的子串,是子集的概念,不是集合。
空串也属于子串。
长度为n的字符串
串中字符均不相同1、有n(n+1)/2+1个子串;2、非空子串:
n(n+1)/2;3、非空真子串:
n(n+1)/2–1;
串中字符出现重复n(n+1)/2+1-重复个数
「题目解析」 UP!
UP!
JD,有8个字符,n=8。
n(n+1)/2+1=37
但官方答案没有考虑重复的字符。
若考虑重复字符,1个字符子串重复个数=1+1+1(U,P,!
)2个字符子串重复个数=1+1(UP,P!
)3个字符子串重复个数=1(UP!
)所以,37-6=31
12.一颗二叉树的叶子节点有5个,出度为1的结点有3个,该二叉树的结点总个数是?
A.11B.12C.13D.14
正确答案:
B
结点的度:
结点拥有的子树的数目
叶子结点:
度为0的结点
分支结点:
度不为0的结点
树的度:
树中结点的最大的度
度和结点的关系
树中结点数=总分叉数+1 即,度为0的节点数为度为2的节点数加1 n0=n2+1
「题目解析」 已知,n0=5,n1=3
n=n0+n1+n2n0=n2+1解得n=12。
13.以下哪种排序算法一趟结束后能够确定一个元素的最终位置?
A.简单选择排序B.基数排序C.堆排序D.二路归并排序
官方答案:
C民间答案:
AC
各种排序方法总结
简单选择排序,能够取出当前无序序列中最(小or大)值与第一位置的元素互换位置。
堆排序每趟总能选出一个最值位于根节点。
冒泡排序总是两两比较选出一个最值位于数组前面。
快速排序选出的枢轴在一趟排序中就位于了它最终的位置
插入排序(直接、二分)不一定会位于最终的位置,因为不确定后面插入的元素对于前面的元素是否产生影响。
希尔排序(本质也是插入排序)只在子序列中直接插入排序。
所以不能确定。
二路归并排序除非在缓存区一次放入所有的序列(这样得不偿失),否则不能确定最终位置。
所以只有简单选择排序、快速排序、冒泡排序、堆排序每一趟排序结束都能确定一个元素最终位置的方法有哪些
14.权值分别为9、3、2、8的结点,构造一棵哈夫曼树,该树的带权路径长度是?
A.36B.40C.45D.46
正确答案:
B
哈夫曼编码的知识点在《网易2018校园招聘数据分析工程师笔试卷》第二题出现过。
哈夫曼编码的理解和方法,强烈推荐参考《哈夫曼编码的理解(HuffmanCoding)》
「题目解析」 带权路径长度=(2+3)x3+8x2+9x1=40
15.在()中,只要指出表中任何一个结点的位置,就可以从它出发依次访问到表中其他所有结点。
A.线性单链表B.双向链表C.线性链表D.循环链表
正确答案:
D
「题目解析」
单向链表:
一个节点包含2个信息:
值,下一个节点,所以,对于任何一个节点,只能知道它的下一个节点,末尾节点的下一个节点不存在;
双向链表:
每个结点设置有两个指针,一个指向其前驱,一个指向其后继,这样从任意一个结点开始,既可以向前查找,也可以向后查找,在结点的访问过程中一般从当前结点向链尾方向扫描,如果没有找到,则从链尾向头结点方向扫描,这样部分结点就要被遍历两次,因此不符合题意。
循环链表的最后一个结点的指针域指向表头结点,所有结点的指针构成了一个环状链,只要指出表中任何一个结点的位置就可以从它出发访问到表中其他所有的结点。
16.网络管理员把优盘上的源代码给程序员参考,但要防止程序误删除或修改,以下正确的加载方式是()
A.mount-odefaults/dev/sdb1/toolsB.mount-r/dev/sdb1/toolsC.mount-oro/dev/sdb1/toolsD.mount-oro/dev/sdb/tools
正确答案:
BC
linux磁盘管理
任何块设备都不能直接访问,需挂载在目录上访问 「挂载」:
将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录做为其它文件访问入口的行为(挂载的设备必须有文件系统)mount[-选项]DEVICE(设备)MOUNT_POINT(挂载点)
(1)device:
指明要挂载的设备①设备文件:
例如/dev/sda5
(2)挂载选项--r:
readonly,只读挂载,不能进行其他操作,和权限无关,介质只能读,多用于冷备份。
在mount查询时时显示ro-ooptions:
(挂载文件系统的选项),多个选项使用逗号分隔-oro:
只读rw:
读写(defaults)
「民间解析」
A-默认选项–错误D-sdb和sdb1的差别。
sdb表示整个SD卡设备名sdb1表示SD卡的第一个分区。
相应的,如果还有一个分区的话,表示为sdb2用fdisk-l命令查看U盘的盘符。
一般为/dev/sdb1
17.下列有关软连接描述正确的是
A.与普通文件没什么不同,inode都指向同一个文件在硬盘中的区块 B.不能对目录创建软链接C.保存了其代表的文件的绝对路径,是另外一种文件,在硬盘上有独立的区块,访问时替换自身路径D.不可以对不存在的文件创建软链接
官方答案:
B民间答案:
C
软连接
硬连接 若一个inode对应多个文件名,则称这些文件为硬链接。
换言之,硬链接就是同一个文件使用了多个别名。
软连接软链接与硬链接不同,若文件用户数据块中存放的内容是另一文件的路径名的指向,则该文件就是软连接。
软链接就是一个普通文件,只是数据块内容有点特殊。
软链接有着自己的inode号以及用户数据块。
因此软链接的创建与使用没有类似硬链接的诸多限制。
A错误,后半句说的是硬链接,硬链接是共同拥有同一个inode。
B错误,软链接可对文件或目录创建D错误,可对不存在的文件或目录创建软链接;
18.Ext3日志文件系统的特点是:
A.高可用性B.数据的完整性C.数据转换快D.多日志模式
正确答案:
ABCD
EXT3
EXT3是第三代扩展文件系统(英语:
Thirdextendedfilesystem,缩写为ext3),是一个日志文件系统,常用于Linux操作系统。
Ext3日志文件系统特点 1、高可用性系统使用了ext3文件系统后,即使在非正常关机后,系统也不需要检查文件系统。
宕机发生后,恢复ext3文件系统的时间只要数十秒钟。
2、数据的完整性ext3文件系统能够极大地提高文件系统的完整性,避免了意外宕机对文件系统的破坏。
3、文件系统的速度尽管使用ext3文件系统时,有时在存储数据时可能要多次写数据,但是,从总体上看来,ext3比ext2的性能还要好一些。
这是因为ext3的日志功能对磁盘的驱动器读写头进行了优化。
4、数据转换由ext2文件系统转换成ext3文件系统非常容易,只要简单地键入两条命令即可完成整个转换过程,用户不用花时间备份、恢复、格式化分区等。
5、多种日志模式Ext3有多种日志模式,一种工作模式是对所有的文件数据及metadata(定义文件系统中数据的数据,即数据的数据)进行日志记录(data=journal模式);另一种工作模式则是只对metadata记录日志,而不对数据进行日志记录,也即所谓data=ordered或者data=writeback模式。
19.DHCP是动态主机配置协议的简称,其作用是
A.动态分配磁盘资源B.动态分配内存资源C.为网络中的主机分配IP地址D.为集群中的主机分配IP地址
正确答案:
C
DHCP
动态主机设置协议(英语:
DynamicHostConfigurationProtocol,DHCP)是一个局域网的网络协议,使用UDP协议工作,主要有两个用途:
(1)用于内部网或网络服务供应商自动分配IP地址;
(2)给用户用于内部网管理员作为对所有计算机作中央管理的手段。
20.以下命令可以用于获取本地ip地址的是:
A.ifconfigB.uptimeC.topD.netstat
正确答案:
A
「题目解析」
A.ifconfig:
获取本地ip地址;B.uptime:
显示系统已经运行了多长时间,它依次显示下列信息:
当前时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载;C.top:
查看linux系统的CPU、内存、运行时间、交换分区、执行的线程等信息;D.netstat:
列出系统上所有的网络套接字连接情况,包括tcp,udp以及unix套接字,另外它还能列出处于监听状态(即等待接入请求)的套接字。
21.以下命令可以用于获取本机cpu使用率的是:
A.ifconfigB.uptimeC.topD.netstat
正确答案:
C参考第20题解析。
22.以下命令用于设置环境变量的是:
A.exportB.catC.echoD.env
正确答案:
A
关于环境变量的命令 export:
设置环境变量echo:
查看是否成功env:
显示所有的环境变量set:
显示所有本地定义的Shell变量unset:
清除环境变量
23.下列对TCP/IP结构及协议分层不正确的是:
A.网络接口层:
Wi-Fi、ATM、GPRS、EVDO、HSPA。
B.网际层:
IP、ICMP、IGMP。
C.传输层:
TCP、UDP、TLS、ssh。
D.FTP、TELNET、DNS、SMTP.
正确答案:
C
TCP/IP协议
TCP/IP协议(传输控制协议/互联网协议)不是简单的一个协议,而是一组特别的协议,包括:
TCP,IP,UDP,ARP等,这些被称为子协议。
在这些协议中,最重要、最著名的就是TCP和IP。
因此,大部分网络管理员称整个协议族为“TCP/IP”。
24.以下哪种设备工作在数据链路层?
A.中继器B.集线器C.交换机D.路由器
正确答案:
C
OSI七层模型涉及的主要设备
物理层的主要设备:
中继器、集线器。
数据链路层主要设备:
二层交换机、网桥
网络层主要设备:
路由器
25.打电话使用的数据传输方式是(),手机上网使用的数据传输方式是()?
A.电路交换,电路交换B.电路交换,分组交换C.分组交换,分组交换D.分组交换,电路交换
正确答案:
B
「电路交换」是以电路为目的的交换方式,即通信双方要通过电路建立联系,建立后没挂断则电路一直保持,实时性高。
「分组交换」是把信息分为若干分组,每个分组有分组头含有选路和控制信息,可以到达收信方,但是不能即时通信
26.后退N帧协议的发送窗口大小是(),接收窗口的大小是()?
A.=1,=1B.=1,>1C.>1,>1D.>1,=1
正确答案:
D
后退N帧ARQ协议对传统的自动重传请求(ARQ,AutomaticRepeatreQues)进行了改进,从而实现了在接收到ACK之前能够连续发送多个数据包。
注:
ACK:
在TCP/IP协议中,如果接收方成功的接收到数据,那么会回复一个ACK数据。
通常ACK信号有自己固定的格式,长度大小,由接收方回复给发送方。
接收窗口接收到分组就向前移动。
发送窗口接受到接收窗口发送的ACK才会向前移动。
后退N帧协议的最大发送窗口为2n-1(其中n为帧号的位数),最小为1,接收窗口大小始终为1。
27.TCP释放连接第二次挥手时ACK(),第三次挥手时ACK()?
A.不存在,不存在,B.不存在,值是1C.值是1,值是1D.值是1,不存在
答案:
C
「民间解析」
TCP连接建立阶段:
第一次握手:
客户端的应用进程主动打开,并向客户端发出请求报文段。
其首部中:
SYN=1,seq=x。
第二次握手:
服务器应用进程被动打开。
若同意客户端的请求,则发回确认报文,其首部中:
SYN=1,ACK=1,ack=x+1,seq=y。
第三次握手:
客户端收到确认报文之后,通知上层应用进程连接已建立,并向服务器发出确认报文,其首部:
ACK=1,ack=y+1。
当服务器收到客户端的确认报文之后,也通知其上层应用进程连接已建立。
连接释放阶段:
第一次挥手:
数据传输结束以后,客户端的应用进程发出连接释放报文段,并停止发送数据,其首部:
FIN=1,seq=u。
第二次挥手:
服务器端收到连接释放报文段之后,发出确认报文,其首部:
ack=u+1,seq=v。
此时本次连接就进入了半关闭状态,客户端不再向服务器发送数据。
而服务器端仍会继续发送。
第三次挥手:
若服务器已经没有要向客户端发送的数据,其应用进程就通知服务器释放TCP连接。
这个阶段服务器所发出的最后一个报文的首部应为:
FIN=1,ACK=1,seq=w,ack=u+1。
第四次挥手:
客户端收到连接释放报文段之后,必须发出确认:
ACK=1,seq=u+1,ack=w+1。
再经过2MSL(最长报文端寿命)后,本次TCP连接真正结束,通信双方完成了他们的告别。
因此应选B
28.TCP协议的拥塞控制就是防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不致过载。
常用的方法有:
A.慢启动、窗口滑动B.慢开始、拥塞控制C.快重传、快恢复D.快开始、快恢复
正确答案:
BC
TCP拥塞控制 慢启动、拥塞避免、快重传、快启动
强烈参考 《TCP拥塞控制-慢启动、拥塞避免、快重传、快启动》
29.对于京东商城高流量访问,预防Ddos的方法可以有?
A.限制同时打开SYN半链接的数目。
B.缩短SYN半链接的Timeout时间。
C.关闭不必要的服务。
D.限制客户端请求服务器时长。
正确答案:
ABC
Ddos
分布式拒绝服务攻击(DistributedDenialofService,简称DDoS)是指处于不同位置的多
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 分析 题库 答案