6月数据分析及应用习题库含参考答案解析
一、单选题(共20题,每题1分,共20分)
1.下列选项中,不属于groupby()方法分组方式的是
A、A[[234][789]]
B、B[[123][678]]
C、C[234789]
D、D[123678]
正确答案:A
2.下面不属于结构化程序设计原则的是______。
A、A模块化
B、B自顶向下
C、C可继承性
D、D逐步求精
正确答案:C
答案解析:结构化程序设计的原则包括:自顶向下、逐步求精、模块化、限制使用goto语句。可继承性是面向对象程序设计的特点,不属于结构化程序设计原则。
3.在软件开发中,下面任务不属于设计阶段的是______。
A、A数据结构设计
B、B给出系统模块结构
C、C定义模块算法
D、D定义需求并建立系统模型
正确答案:D
答案解析:软件设计阶段包括总体设计(如给出系统模块结构)和详细设计(如数据结构设计、定义模块算法)。定义需求并建立系统模型属于需求分析阶段的任务,而不是设计阶段的任务。
4.在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是():
A、A访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)
B、B在第i个结点后插入一个新结点(1≤i≤n)
C、C删除第i个结点(1≤i≤n)
D、D将n个结点从小到大排序
正确答案:A
答案解析:顺序表中访问第i个结点,可通过数组下标直接计算得到存储位置,时间复杂度为O(1);求第i个结点的直接前驱(2≤i≤n),通过下标i-1可直接获取,时间复杂度也是O(1)。在第i个结点后插入新结点,需要移动后续元素,时间复杂度为O(n)。删除第i个结点,同样需要移动后续元素,时间复杂度为O(n)。将n个结点从小到大排序,时间复杂度通常为O(n^2)或更高,取决于排序算法。所以时间复杂度是O(1)的操作是访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n),答案选A。
5.平均要取多少个(0,1)中的随机数才能让和超过1?
A、A10^6
B、B10^10
C、Ce^2
D、De
正确答案:D
答案解析:设\(X_1,X_2,\cdots\)是独立同分布的在\((0,1)\)上的均匀随机变量,设\(S_n=X_1+X_2+\cdots+X_n\)。我们想知道\(n\)取何值时\(S_n1\)。根据均匀分布的期望\(E(X_i)=\frac{0+1}{2}=\frac{1}{2}\),方差\(Var(X_i)=\frac{(1-0)^2}{12}=\frac{1}{12}\)。由中心极限定理,当\(n\)充分大时,\(\frac{S_n-nE(X_i)}{\sqrt{nVar(X_i)}}\)近似服从标准正态分布\(N(0,1)\)。即\(\frac{S_n-\frac{n}{2}}{\sqrt{\frac{n}{12}}}\approxN(0,1)\)。我们要找到\(n\)使得\(P(S_n1)\),也就是\(P\left(\frac{S_n-\frac{n}{2}}{\sqrt{\frac{n}{12}}}\frac{1-\frac{n}{2}}{\sqrt{\frac{n}{12}}}\right)\)。当\(n=e\)时,\(\frac{1-\frac{e}{2}}{\sqrt{\frac{e}{12}}}\approx0\)。此时\(P(S_e1)\)约为\(P(Z0)=\frac{1}{2}\),随着\(n\)增大,\(P(S_n1)\)会逐渐增大,当\(n=e\)时开始使得\(S_n\)有较大概率超过\(1\)。所以平均要取\(e\)个\((0,1)\)中的随机数才能让和超过\(1\)。
6.关于哑变量的说法中,下列选项描述错误的是
A、A哑变量是人为虚设的变量
B、B哑变量在转换成指标矩阵后,其值通常为0或1
C、CPnadas中get_dummies()函数可以对类别进行哑变量处理
D、D哑变量的使用没有实际意义
正确答案:D
答案解析:哑变量在数据分析等领域具有重要实际意义。例如在回归分析中,当自变量为分类变量时,需要将其转换为哑变量才能纳入模型进行分析,所以选项D描述错误。选项A,哑变量确实是人为虚设的变量;选项B,哑变量通常取值为0或1构成指标矩阵;选项C,Pandas中get_dummies()函数可用于对类别进行哑变量处理。
7.一棵完全二叉树共有360个结点,则在该二叉树中度为1的结点个数为_