最近在准备数据分析岗位的笔试整理了牛客网上的一些试题与答案方便查看。试卷信息客观题单选20道主观题问答1道,编程2道完成时间 120分钟难度系数 三颗星总分 100分注省略了编程题1、已知存在以下表S 表保存着学生关系有两列其中SNO 为学号SNAME 为姓名C 表保存着课程关系有三列其中CNO 为课程号CNAME 为课程名CTEACHER 为老师SC表保存着选课关系有三列其中SNO为学号CNO为课程号SCORE 为成绩(1). 找出没有选“小易”老师课程的所有学生姓名(2). 列出有三门包括三门以上课程分数90的学生姓名及其平均成绩答案无参考解析(1)第一小题两种参考解法SELECT A.SNAME FROM S AS A WHERE A.SNO NOT IN ( SELECT S.SNO FROM S JOIN SC ON S.SNOSC.SNO JOIN C ON SC.CNOC.CNO WHERE C.CTEACHER小易 )SELECT S.SNO FROM S WHERE S.SNO NOT IN ( SELECT SC.SNO FROM SC WHERE SC.CNO IN ( SELECT C.CNO FROM C WHERE C.CTEACHER 小易 ) )(2)第二小题两种参考解法select t.SNAME from ( select S.SNAME,count(S.SNO) as num from S join SC on S.SNOSC.SNO join C on S.CNO C.CNO where SC.SCORE 90 group by S.SNO ) t where t.num 3select S.SNAME from S join SC on S.SNOSC.SNO join C on S.CNO C.CNO where SC.SCORE 90 group by S.SNO HAVING COUNT(S.SNAME)32、有2堆宝石A和B一起玩游戏假设俩人足够聪明规则是每个人只能从一堆选走1个或2个或3个宝石最后全部取玩的人获胜假设2堆宝石的数目为12和13请问A怎么可以必胜答案让A先取参考解析A先拿拿走13个里的一个, 然后B拿1个A就拿同堆的3个B拿2个A就拿同堆的2个B拿3个A就拿同堆的1个3、从数字集合{1,2,3,4,… ,20}中选出4个数字的子集如果不允许两个相连的数字出现在同一集合中那么能够形成多少个这种子集答案2380参考解析插空法 把4个数插到16个数形成的17个空格中。 C4 174、将4个不一样的球随机放入5个杯子中则杯子中球的最大个数为3的概率是?答案16/125参考解析分母总体情况每个球都可以任选一个杯子5*5*5*5分子任选一个杯子装任意3个球C51×C43剩下1个球选剩下4个杯子5*4*45、下面程序的功能是输出数组的全排列,选择正确的选项,完成其功能。答案B参考解析求解答6、若有33个长度不等的初始归并段做7路平衡归并排序为组织最佳归并树应增加长度为0的初始归并段的个数是________。答案4参考解析在一般情况下对于 k–路平衡归并来说若 (m-1)MOD(k-1)0则不需要增加虚段否则需附加 k-(m-1)MOD(k-1)-1 个虚段。其中m33,k7, ans 7-(33-1)Mod(7-1)-1 7-32Mod6-1 7-2-1 4http://data.biancheng.net/view/79.html7、将一个整数序列整理为升序两趟处理后序列变为10,12,21,9,7,3,4,25则采用的排序算法可能是________。答案插入排序参考解析插入排序第n趟前n1个有序选择排序第n趟前n个位置正确快速排序第n趟有n个元素位置正确堆排序第n趟前或后n个位置正确序列最后排序应该为10,12,21,9,7,3,4,25序列经两趟排序后为10,12,21,9,7,3,4,25即第二趟前3个位置有序满足插入排序8、在数理统计中 一般通过增加抽样次数取平均来使得预估误差减小 在机器学习中也有类似的模型处理 如随机森林 通过引入随机样本并且增加决策树的数据对于随机森林主要降低预估的哪个方面值答案预估方差参考解析增加数据是降低由数据的不稳定性所带来的方差增加模型复杂度是降低偏差另外噪音是无法避免的9、以下不属于非监督学习的为答案D参考解析KNN算法又称k近邻分类(k-nearest neighbor classification)算法。它是根据不同特征值之间的距离来进行分类的一种简单的机器学习方法它是一种简单但是懒惰的算法。他的训练数据都是有标签的数据即训练的数据都有自己的类别。10、将当前命令sh test.sh任务在后台执行下列最优雅的的做法是答案nohup sh test.sh 参考解析nohup no hang up命令用途不挂断地运行命令。语法nohup Command [ Arg … ] [ ]例子 nohup sh example.sh 描述nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令忽略所有挂断SIGHUP信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令添加 表示”and”的符号到命令的尾部。11、截取logfile文件中含有suc的行并且只输出最后一列下列操作正确的是:答案C参考解析-o只输出文件中匹配到的部分12、哪个不是DDL(数据库定义语言)语句答案D参考解析DDLData Denifition Language数据定义语言关键字create、drop、alter、rename创建、删除、更改表结构、rename table 旧表名 to 新表名DMLData Manipulation Language数据操作语言关键字insert、delete、update插入、删除、更改数据DQLData Query Language数据查询语言关键字select查询数据TCLTrasactional Conrtol Language事务控制语言关键字commit、rollback用来提交和回滚事务DCLData Conrtol Language数据控制语言关键字grant、revoke用来设置或更改数据库用户或角色权限13、对于SQL语句select * from t where a100 and b200哪个索引可以使用到答案D参考解析无14、若要在员工信息表EMP中增加一列WANGYI_NO网易id可用 。答案C参考解析无15、在机器学习任务中经常假设矩阵为n×n的对称矩阵A 则以下说法正确的是答案C参考解析对称矩阵不一定满秩不同特征值之间的特征向量一定正交而同一特征值的特征向量需要借助公式得正交向量ps:不同特征值对应的特征向量线性无关的证明https://zhuanlan.zhihu.com/p/3045449016、以下关于python数据结构说法正确的是答案D参考解析无17、一个快递公司对同一年龄段的员工进行汽车三轮车二轮车平均送件量的比较结果给出sig.0.034说明答案D参考解析无18、小明在一次班干部二人竞选中支持率为百分之五十五而置信水平0.95以上的置信区间为百分之五十到百分之六十请问小明未当选的可能性有可能是答案D参考解析置信水平0.95以上的置信区间为50%-60%则区间[0%, 50%]⋃[60%,100%]的概率为5%。仅当落在区间区间[0%, 50%]时小明落选则概率为(50-0)((50-0)(100-60) * 5% 5/9 * 5% ≈ 2.78% ≈ 3%19、以下关于最小二乘法正确的是答案D参考解析在回归分析中最小二乘得到无偏估计若经过收缩变成了有偏估计可以降低估计量的方差从而改善均方误差提高预测效果在回归中正则化通常用L1lasso回归L2岭回归实际上完成了向0的收缩正则化就是通过收缩的方法限制了模型变得越来越复杂不care样本内误差降低模型参数的误差从而提高场外预测效果20、小明在一次班干部二人竞选中支持率为百分之五十五而置信水平0.95以上的置信区间为百分之五十到百分之六十请问小明未当选的可能性有可能是答案D参考解析置信水平0.95以上的置信区间为50%-60%则区间[0%, 50%]⋃[60%,100%]的概率为5%。仅当落在区间区间[0%, 50%]时小明落选则概率为(50-0)((50-0)(100-60) * 5% 5/9 * 5% ≈ 2.78% ≈ 3%22、设{xn}服从独立同分布 E[xn] 0, Var[xn]1, 则当n趋向于无穷大时下式值为答案1参考解析E(X^2)E^2(X)Var(X)1;E(Xi, Xi1)0;上下取期望有原式(1010...10)/n123、通常可以通过关联规则挖掘来发现啤酒和尿布的关系 那么如果对于一条规则A →B, 如果同时购买A和B的顾客比例是4/7, 而购买A的顾客当中也购买了B的顾客比例是1/2, 而购买B的顾客当中也购买了A的顾客比例是1/3,则以下对于规则A →B的支持度(support)和置信度(confidence)分别是多少答案4/7、1/2参考解析支持度是个百分比它指的是某个商品组合出现的次数与总次数之间的比例PAB置信度它指的就是当你购买了商品 A会有多大的概率购买商品 PB|A提升度 (A→B) 置信度 (A→B)/ 支持度 (B)由已知条件P(A∪B)P(B|A)1/2P(A|B)1/23支持度Support(A-B)P(A∪B)4/7置信度Coffidence(A-B)P(B|A)1/2置信度Coffidence(B-A)P(A|B)1/3